【发布时间】:2017-08-11 15:32:45
【问题描述】:
我正在尝试比较两个数组是否相等。我正在破坏数组a,最后将它们存储到两个不同的数组b 和c 中。最后,我在控制台中检查数组b 和c。
控制台显示相等的值,但是当我比较两个数组时,我得到的数组不相等。
这是我的代码:
var a = [1,2,3,4,3,2,1];
var b = [];
var c = [];
var t = 0;
var length = a.length;
console.log("is the array length" + length);
if (length %2 !== 0) {
var mid = parseInt(length/2)-1;
console.log(a[mid]);
for(var j=length-1; j>(mid+1); j--) {
c[t] = a[j];
t++;
}
for(var i=0; i<=mid; i++) {
b[i] = a[i];
}
console.log(c);
console.log(b);
if(b == c) { //comparing the array b and c
console.log("true");
}
else {
console.log("no")
}
}
这是我的 jsbin 链接:https://jsbin.com/metexuruka/edit
【问题讨论】:
-
数组永远不会相等。它们存储在不同的内存位置。
-
所以我不能比较两个数组??
标签: javascript arrays