【发布时间】:2017-10-18 01:29:38
【问题描述】:
运行此函数时,我不断返回一个仅返回第一个参数 (a) 的数组。最终目标是返回一个找到与第二个参数 (b) 匹配的数组并将其从第一个参数中删除。我在下面包含了两个测试功能。我已经研究了一段时间,似乎它只是忽略了我的“if”语句中的条件。谁能发现为什么?我也愿意采用更简洁的方法来做到这一点,因为我还在学习 JavaScript。提前致谢!
function array_diff(a, b) {
var newArr = [];
for ( i = 0; i < a.length; i++) {
if (b !== a[i]) {
newArr.push(a[i]);
}
}
return newArr;
}
array_diff([1,2,2,2,3],[2]);
array_diff([1,2],[1]);
【问题讨论】:
标签: javascript arrays for-loop if-statement