由于引用指向的是值本身而非变量,所以,一个引用是无法改变另一个引用的指向。如下demo
let a = [1, 2, 3];
let b = a;
console.log(a); // [1, 2, 3]
console.log(b); // [1, 2, 3]
b = [4, 5, 6];
console.log(a); // [1, 2, 3]
console.log(b); // [4, 5, 6]
如这个例子,在执行b = [4, 5, 6]之前,a和b的指向都是一样的,都是指向同一个地址的值。但是b被重新赋值之后,它不再指向原来的数组,而是指向了另一个地址的值。