defaultConfig {
applicationId 'com.example'
}
flavorGroups 'fruit', 'paid'
productFlavors {
apple {
flavorGroup 'fruit'
applicationIdSuffix '.apple'
}
orange {
flavorGroup 'fruit'
applicationIdSuffix '.orange'
}
free {
flavorGroup 'paid'
applicationIdSuffix '.free'
}
premium {
flavorGroup 'paid'
applicationIdSuffix '.premium'
}
}
//终止([3,5,1,2,2],2,3,5)应该返回[1]
答案 0 :(得分:0)
正如 Jaromanda X 建议的那样,如果您使用的是ES2015/ES6,那么这是最佳解决方案:
function terminate(arr, ...args) {
return arr.filter(el => !args.includes(el));
}
修改:抱歉! Array.prototype.includes
不属于ES2015/ES6 ES2016的一部分。如果您使用Bitwise operator,则需要使用args.indexOf(el) === -1
(如下一个示例)或!~args.indexOf(el)
(使用ES2015/ES6)作为过滤谓词函数。
对于ES5这样的事情会起作用:
function terminate(arr) {
var args = Array.prototype.slice.call(arguments, 1);
return arr.filter(function (el) {
return args.indexOf(el) === -1;
});
}