Discuss
/
JavaScript
/
不给slice()传参,相当于复制一个Array,那为什么最后判断为false?
不给slice()传参,相当于复制一个Array,那为什么最后判断为false?
Topic source当‘===’对两个复合类型(对象、数组、函数)的数据比较时,不是比较它们的值是否相等,而是比较它们是否指向同一个对象,上述代码中实际存在两个数组变量,但他们的值是相等的,不知道有没有说清啊
var a = arr.splice(0,arr.length-1).join(',')
var b = arr[arr.length-1]
console.log('欢迎'+a+'和'+b+'同学!');
- 1
LovinZZ
var arr = ['A', 'B', 'C', 'D', 'E', 'F', 'G']; var aCopy = arr.slice(); aCopy; // ['A', 'B', 'C', 'D', 'E', 'F', 'G'] aCopy === arr; // false