我的函数只比较数组中的第一个值。有什么问题?
var areArraySame = function(one, two){
for(var i=0;one[i] === two[i];i++){
return(console.log("true"));
}
};
console.log(areArraySame([1,0,5,5,2,2] , [1,6,5,5,2,2]));
答案 0 :(得分:2)
因为您从for循环返回。 返回会中断函数执行并将控件返回给调用者。
var areArraySame = function(one, two){
for(var i=0;one[i] === two[i];i++){
console.log("true");
}
};
areArraySame([1,0,5,5,2,2] , [1,6,5,5,2,2]);

我建议您在loop
时使用,而不是for
,因为它会更清晰
使用while
循环
var areArraySame = function(one, two){
var index = 0;
while(one[index] === two[index]){
console.log("true");
index++;
}
};
areArraySame([1,0,5,5,2,2] , [1,6,5,5,2,2]);

答案 1 :(得分:0)
var areArraySame = function(one, two){
var same = true;
for(var i=0;i < one.length;i++){
if (one[i] !== two[i]) {
same = false;
break;
}
}
console.log(same);
return same;
};
console.log(areArraySame([1,0,5,5,2,2] , [1,6,5,5,2,2]));