es6对象的解构赋值 JavaScript中变量赋值语句返回值是什么?

JavaScript中变量赋值语句返回值是什么?赋值语句的解析是从右向左的。例如,如果a=bc,它首先将B和C的值相加,然后将它们的和返回给a。此时,a得到值。当a发生变化时,它不会影响B和C的值。但

JavaScript中变量赋值语句返回值是什么?

赋值语句的解析是从右向左的。例如,如果a=bc,它首先将B和C的值相加,然后将它们的和返回给a。此时,a得到值。当a发生变化时,它不会影响B和C的值。但是如果您将数据的引用类型赋值给a,例如B=[1,2,3]a=B,那么赋值语句的返回就是一个引用,它实际上是一个内存地址。所以如果你改变a的值,那么B也会改变,因为它们引用了相同地址的数据。由于这种不可预测的赋值,因此有类似于immutable的插件来保持对象的不可变性,并避免赋值的副作用。