1,对象跟基本类型之间的转换: 不管何时,只是对象非空,在布尔环境中都为true. 如; new Boolean(false); new Number(0); new String(“”); new Array(); 上面虽然内部值是false,但对象的值是true; Object ? valueOf() ? toString() 其中Date类,是先执行toString()转换。 2,js中操作一个数据值: 任何语言都有自己的操作数据的方法; Js也不例外,js有3种重要的方式来操作一个数据值。 1) 复制它。例如把它赋给一个新的变量。 2) 把它作为参数传递给一个函数或方法。 3) 可以和其他值比较大小。 Js通过传值和传址2种方式操作这些数据的值。 从名称可以看处,传值 是通过传递值来操作数据。在赋值的过程中,对实际的值进行了拷贝,存储到一个新的变量中。拷贝的值和原来的值是2份完全独立的值。所以如果你改变了拷贝的值,并不会影响原来的值。当比较大小时候,通常进行琢个字节比较。 传址 从名字来看,就是通过传递地址来操作数据。在赋值的过程中,对实际的值的地址(可以说是引用)进行了拷贝,他们不是完全的独立,所以如果你通过引用改变了值,那么原始的值也会改变。当比较大小的时候,通常是看他们是否引用同一个地址来比较。 简单的传址例子: var a = new Date(); alert(a.getDate()); var b = a ; b.setDate(); alert(a.getDate()) // 输出 3,一般来说: 基本数据类型通过传值来操作的。(如果忘记了哪些是基本数据类型,可以往回看。) 对象数据类型通过传址来操作的。(比如 数组和函数) 例子: <script> //传值 a=1; b=a; b=2; alert(a); //输出 1 //传址 x=[1,2]; y=x; // 赋给y的只是x的一个引用,而不是x本身。数组已经在语句中被赋值了,执行过这段代码后,仍旧只有一个数组对象,只不过我们有2个对他的引用了。 y[0]=2; alert(x[0] +" | " +x[1]); //输出 2 | 2 </script> 其中我们必须注意字符串: js中字符串是通过传址来复制和传递的,而他们是通过传值来比较的。 对象和数组是用传值来传递的,只不过传递的这个值实际是一个引用,而不是对象本身。 总结: 类型 复制 传递 比较 数字 传值 传值 传值 布尔 传值 传值 传值 字符串 不可变 不可变 传值 对象 传址 传址 传址 不可变:在JS中,没有方法去改变字符串值的内容。 对字符串来说,传值还是传址,意义不大。
推荐整理分享Javascript入门学习第二篇 js类型第1/2页(js入门基础教程),希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:js入门基础教程,javascript初学者,javascript零基础入门,javascript快速入门,javascript入门教程,javascript零基础入门书籍,javascript零基础入门书籍,javascript零基础入门书籍,内容如对您有帮助,希望把文章链接给更多的朋友!
Javascript入门学习第三篇 js运算第1/2页 1,表达式:最简单的表达式:直接量或者变量名。vara=1;直接量表达式的值:本身。变量表达式的值:该变量所存放或引用的值。2,运算符:一元运算符
Javascript入门学习第四篇 js对象和数组第1/2页 比较难哦。做好心里准备吧。。。。。。深呼吸。。。1,for/in:一种遍历(枚举)对象属性的方法,可以循环我们呢事先不知道的属性。它可以枚举处用
Javascript入门学习第五篇 js函数第1/2页 1,函数:function是一个定义一次却可以多次调用的js代码。当一个函数被一个对象调用时,那么这个函数就叫做这个对象的方法。functioncssrain(x,y){//code}解