标签:
说明:简单的数据段:undefined、null、number、string、boolean。
说明:保存在内存中的对象。
如果从一个变量向另一个变量复制基本类型的值,会在变量对象上创建一个新值,然后把该值复制到位新变量分配的位置上。
示例:
var num1=1; var num2=num1;
num1和num2的值都为1,并且是独立的,改变num1不会改变num2的值。
注意:这两个变量可以参与任何操作而不会相互影响。
当一个变量向另一个变量复制引用类型的值时,同样也会将存储在变量对象中的值复制一份放在为新变量分配的空间中。不同的是,这个值的副本实际上是一个指针,而这个指针指向存储在堆中的一个对象。复制操作结束后,两个变量实际上将引用同一个对象。
示例:
var obj1={ name:‘123‘ }; var obj2=obj1; obj1.name=‘345‘; obj2.age=3; console.log(obj2.name); console.log(obj1.age); /*
345 3
*/
注意:这两个变量,改变其中一个变量,就会影响另一个变量。
typeof:typeof是检测基本数据类型的得力助手:
示例:
var a=3; console.log(typeof a);//number
但是,typeod在检测引用类型的对象时,用处不是很大,因为,我们通常并不想知道某个值是对象,而是想知道它是什么类型的对象,这个时候instanceof就很有用了。
示例:
var a=[1,2]; console.log(a instanceof Array);//true
标签:
原文地址:http://www.cnblogs.com/juanjuanBlog/p/5168267.html