JavaScript中变量赋值语句返回值是什么?
赋值语句的解析是从右到左进行的,比如说,a = b+c; 那么它会先将b和c的值相加,然后把他们的和返回给a,这时a获取的是值,当a发生变化时,是不会影响b和c的值的。但是如果你把一个引用类型的数据赋给a,比如 b=[1,2,3];a = b;那么赋值语句的返回就是一个引用,其实就是一个内存地址,所以如果你改变了a的值,那么b也会跟着改变,因为他们引用的是同一个地址的数据。就因为出现这种不可预测的赋值,所以现在出现了immutable这样的插件,就是为了保持对象的不可变,避免赋值产生副作用。
Copyright © 广州京杭网络科技有限公司 2005-2024 版权所有 粤ICP备16019765号
广州京杭网络科技有限公司 版权所有