这个问题的灵感来自这个问题的竞争答案:indexOf with multiple arguments
用户想知道一种有效的方法来测试数组中是否存在一个或多个给定的整数。具体来说,给定一个数组和数字123, 124, and 125,如何判断给定数组中是否存在这些整数中的一个或多个。提出了两种解决方案:
使用indexOf():
var array = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
var exists = array.indexOf(123) !== -1 || array.indexOf(124) !== -1 || array.indexOf(125) !== -1;
Run Code Online (Sandbox Code Playgroud)
或者,使用some():
var array = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
var exists = array.some(function(item) {
return item === 123 || item === 124 || item === 125;
});
Run Code Online (Sandbox Code Playgroud)
找到成功匹配时,ECMA-262 算法indexOf() …