将JavaScript中的数组复制到另一个数组时:
var arr1 = ['a','b','c'];
var arr2 = arr1;
arr2.push('d'); //Now, arr1 = ['a','b','c','d']
Run Code Online (Sandbox Code Playgroud)
我意识到arr2引用相同的数组arr1,而不是一个新的独立数组.如何复制数组以获得两个独立的数组?
Axel Rauschmayer博士在Exploring ES6中有const定义:
const像let一样工作,但是你声明的变量必须立即初始化,其值不能随后改变.[...]Run Code Online (Sandbox Code Playgroud)const bar = 123; bar = 456; // TypeError: `bar` is read-only
然后他写道
const仅表示变量始终具有相同的值,但并不意味着值本身是或变为不可变的.
我对这个陷阱感到困惑.任何人都可以清楚地定义const这个陷阱吗?