js 数组赋值问题 :值传递还是引用?

时间:2019-08-10 14:58:05 类型:JS/JQUERY
字号:    

下面这个解释摘自知乎的网友,感觉解释的很好, 这里就复制做个复制传递分享

var a = [1,2,3];  //把a牌号挂到 123楼门口
var b = a;        //把b牌号挂到 a牌号所在的楼门口,即123楼
a = [4,5,6];      //把a牌号摘下来,挂到了456楼的门口
alert(b);  //[1,2,3]  //此时b牌号依旧挂在123楼门口,b即代表着123楼


var a = [1,2,3];    //把a牌号挂到 123楼门口
var b = a;          //把b牌号挂到 a牌号所在的楼门口,即123楼
a.pop();            //把a牌号所在的楼拆掉顶层,此时a牌号仍旧挂在123楼门口,那就拆3层
alert(b);  //[1,2]  //b牌号仍旧挂在 原123楼门口,但此时只剩12两层

//javascript变量的类型分为两种类型,值类型和引用类型
//1.值类型:数值,布尔值,null,undefined。
//2.引用类型:对象、数组、函数。