仅含单个元素的Fruits数组检测"banana"是否存在的其他实现方法
单元素数组检测是否包含"banana"的其他实现方案
数组固定仅包含1个元素的场景下,除了includes外还可以用以下几种方式实现检测:
直接取下标0对比
因为数组只有1个元素,下标固定为0,直接全等判断是性能最优的方案:var fruits = ["banana"]; var n = fruits[0] === "banana";使用
indexOf方法判断
该方法属于ES5标准,兼容性比ES6的includes更好,返回值为-1则说明不存在目标元素:var fruits = ["banana"]; var n = fruits.indexOf("banana") !== -1;使用
some方法判断
只要数组存在一个元素满足回调条件就返回true,该方法也兼容多元素的通用场景:var fruits = ["banana"]; var n = fruits.some(item => item === "banana");使用
find方法判断
找到匹配条件的元素就返回该元素,否则返回undefined,转为布尔值即可得到结果:var fruits = ["banana"]; var n = Boolean(fruits.find(item => item === "banana"));数组转字符串后对比
单元素数组调用join()后输出内容就是唯一元素本身,直接对比即可:var fruits = ["banana"]; var n = fruits.join() === "banana";
内容的提问来源于stack exchange,提问作者KillMonger
相关产品推荐
相关产品推荐

