【发布时间】:2017-11-18 15:37:55
【问题描述】:
function terminate(arr) {
var args =[];
for(i=1;i<arguments.length;i++){
}
return arr.filter(e => e!=args[0]&& e!=args[1]&&e!=args[2]);
}
terminate([3, 5, 1, 2, 2], 2, 3, 5);
//terminate([3, 5, 1, 2, 2], 2, 3, 5) 应该返回 [1]
【问题讨论】:
-
看到你已经在使用 es2015 ...
function terminate(arr, ...args) => arr.filter(e => !args.includes(e)); -
为什么要删除 for 循环的主体?
-
顺便说一句,您的原始代码工作正常
-
顺便说一句,代码仍然有效,那些只是 console.logs。我想通过循环来完成这部分 =>
return arr.filter(e => e!=args[0]&& e!=args[1]&&e!=args[2]);,而不必自己选择 args 数组位置。
标签: javascript filter arguments