javascript-关于赋值的那点事

var ary1=[3,4];
var ary2=ary1;
ary2[0]=1;
ary2=[6,5]

console.log(ary1)
console.log(ary2)

个人测试出的结果是:更改属性值的话,ary1和ary2的值都会同步,对单独的变量直接赋值只会对这个变量的值有影响,不会影响其他变量的值

再来个例子验证:

1 var obj={name:'web'};
2 var obj1=obj;
3 obj1.age="27";
4 console.log(obj)//{name: "web", age: "27"}
5 console.log(obj1)//{name: "web", age: "27"}
var obj={name:'web'};
var obj1=obj;
obj1={}
console.log(obj)//{name:'web'}
console.log(obj1)//{}

再来个没有属性的数字:

1 var as=1;
2 var b=as;
3 b=3;
4 console.log(as)
5 console.log(b)

用最初的验证结果解释:对单独的变量直接赋值只会对这个变量的值有影响,不会影响其他变量的值

原文地址:https://www.cnblogs.com/studyshufei/p/8665009.html