Discuss / JavaScript / aCopy===arr是false

aCopy===arr是false

Topic source
var arr = ['A', 'B', 'C', 'D', 'E', 'F', 'G'];
var aCopy = arr.slice();
aCopy; // ['A', 'B', 'C', 'D', 'E', 'F', 'G']
aCopy === arr; // false

为什么aCopy===arr是false的啊,aCopy不是arr的复制吗? JS是不能直接用==或者===来判断两个数组是否相等。 要判断两个数组中元素是否相同,可以先将数组转换为字符串,再作比较。所以这里加上toString()方法即可。

console.log(aCopy.toString() ===arr.toString()); // true

  • 1

Reply