此片段来自FreeCodeCamp Seek And Destroy。我不明白传递给过滤器的功能。除此之外,所有其他步骤对我都有意义。请你把它打破给我?我很感激你的帮助。
function destroyer(arr) {
var args = Array.prototype.slice.call(arguments);
args.splice(0, 1);
return arr.filter(function(element) {
return args.indexOf(element) === -1;
});
}
答案 0 :(得分:0)
function destroyer(arr) {
//first the function get all the argument pass in it
var args = Array.prototype.slice.call(arguments);
// it delete the first argument that is the name of the element called
args.splice(0, 1);
// then it return a filter function that is another function that return a boolean true the element is display false it is hide
return arr.filter(function(element) {
// this boolean match to the element is present as argument or not
return args.indexOf(element) === -1;
});
}
答案 1 :(得分:0)
在return语句中,代码返回与给定数字element
不匹配的项目/数字列表。 `filter接受一个返回true或false的回调。并过滤每个项目的回调调用,最后返回那些通过该条件的项目列表。
arr.filter(function(element) {
return args.indexOf(element) === -1;
});