JS判断数组含有某值,in、indexOf、includes、find、findIndex方案比照
本文测试数据:
let arr=["a","b","c"]; //数组let arr2={"a":"aaa","b":"bbb","c":"ccc"}; //对象1、in
in操作符针对的是key,而非value。而对于普通的一维数组来说,key是隐藏的。所以,对于判断某个数组中能否含有某个值来说,这个方案并不合适。
in方案测试代码如下:
console.log("a" in arr);console.log("aa" in arr);console.log(2 in arr);console.log(5 in arr);console.log("a" in arr2);console.log("aa" in arr2);测试结果为:
1577957951350.png
2、indexOf
console.log(arr.indexOf("a")); //存在则返回第一次出现的位置console.log(arr.indexOf("aa")); //不存在则返回-1console.log(arr2.indexOf("b")); //报错,对象没有indexOf方法console.log(arr2.indexOf("aaa")); //报错测试结果为:
1577958207260.png
3、includes
同indexOf一样,includes仅能用于数组操作。
console.log(arr.includes("a")); //包含返回true,不包含返回falseconsole.log(arr.includes("aa"));console.log(arr2.includes("a")); //报错,对象没有includes方法console.log(arr2.includes("aa")); //报错测试结果为:
1577958538019.png
4、find()
console.log(arr.find((n) => n === "a")); //包含返回该值,不包含返回undefinedconsole.log(arr.find((n) => n === "aa"));console.log(arr2.find((n) => n === "a")); //报错,对象没有find方法console.log(arr2.find((n) => n === "aa")); //报错测试结果:
1577959046765.png
5、findIndex()
与 find() 相似,但包含时返回该值的位置。
说明
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是摆设,本站源码仅提供给会员学习使用!
7. 如遇到加密压缩包,请使用360解压,如遇到无法解压的请联系管理员
开心源码网 » JS判断数组含有某值,in、indexOf、includes、find、findIndex方案比照
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是摆设,本站源码仅提供给会员学习使用!
7. 如遇到加密压缩包,请使用360解压,如遇到无法解压的请联系管理员
开心源码网 » JS判断数组含有某值,in、indexOf、includes、find、findIndex方案比照