JS值类型和引用类型数据的区别

  最近真的闲啊,没事做,写了一大堆前端技术博客,越写就越觉得自己菜,知道的少,每天这么高产的博客量,随便上网晃悠一下,就又能发现一个我不知道的或者也不太清楚的基本概念...so ,又一篇暴露JS水平的博客诞生。

我也解释不好,也比较懒,随手存两篇我觉得非常不错的博客:帮助自己理解:

http://www.cnblogs.com/lxq1990/archive/2012/11/04/2754226.html

http://www.cnblogs.com/cxying93/p/6106469.html

JS高级程序设计给的解释:

 

 

 

 

值的引用的例子

var a = [1,2,3];
var b= a;
b.push(4);

alert(a)  ------[1,2,3,4]
alert(b)  ------[1,2,3,4]


//对象类型不仅是值的复制,而且也是引用的传递

 

var a= [1,2,3];

var b=a;

b=[1,2,3,4];

alert(b)------//[1,2,3,4]

alert(a)      //[1,2,3]


//b是重新赋值,赋值会重新分配内存,a,b没有关系了
基本类型的比较:
var a =5;
var b=5;
alert(a==b);  //基本类型:值相同就可以


var a= [1,2,3];
var b=[1,2,3];

alert(a==b);   //false   对象类型:值和引用(地址)都相同才行







 

 

posted @ 2017-07-14 16:58  千寻的天空之城  阅读(153)  评论(0编辑  收藏  举报