ES6中Array.includes()函数的用法

 更新时间:2017年09月20日 11:56:05   作者:白色的海  
这篇文章主要介绍了ES6中Array.includes()函数的用法,需要的朋友可以参考下

在ES5,Array已经提供了indexOf用来查找某个元素的位置,如果不存在就返回-1,但是这个函数在判断数组是否包含某个元素时有两个小不足,第一个是它会返回-1和元素的位置来表示是否包含,在定位方面是没问题,就是不够语义化。另一个问题是不能判断是否有NaN的元素。

const arr1 = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', NaN]
console.log('%s', arr1.indexOf(NaN))

结果:

-1

ES6提供了Array.includes()函数判断是否包含某一元素,除了不能定位外,解决了indexOf的上述的两个问题。它直接返回true或者false表示是否包含元素,对NaN一样能有有效。

const arr1 = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', NaN]
console.log('%s', arr1.includes('c'))
console.log('%s', arr1.includes('z'))
console.log('%s', arr1.includes(NaN))

结果:

true
false
true

includes()函数的第二个参数表示判断的起始位置。

const arr1 = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', NaN]
console.log('%s', arr1.includes('d', 1))
console.log('%s', arr1.includes('d', 3))
console.log('%s', arr1.includes('d', 4))

结果:

true
true
false

第二个参数也可以是负数,表示从右数过来第几个,但是不改变判断搜索的方向,搜索方向还是从左到右。

console.log('%s', arr1.includes('k', -1))
console.log('%s', arr1.includes('k', -2))
console.log('%s', arr1.includes('i', -3))

结果:

false
true
false

总结

以上所述是小编给大家介绍的ES6中Array.includes()函数的用法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

相关文章

  • CSS或者JS实现鼠标悬停显示另一元素

    CSS或者JS实现鼠标悬停显示另一元素

    这篇文章主要介绍了CSS或者JS实现鼠标悬停显示另一元素的相关资料,需要的朋友可以参考下
    2016-01-01
  • JS排序之快速排序详解

    JS排序之快速排序详解

    这篇文章主要为大家详细介绍了JS快速排序的相关资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-04-04
  • Javascript模块模式分析

    Javascript模块模式分析

    javascritp模式讲解全局变量是魔鬼。在YUI中,我们仅用两个全局变量:YAHOO和YAHOO_config。YUI的一切都是使用YAHOO对象级的成员或这个成员作用域内的变量。我们建议在你的应用程序也使用类似的规则。
    2008-05-05
  • Js生成随机数/随机字符串的方法小结【5种方法】

    Js生成随机数/随机字符串的方法小结【5种方法】

    这篇文章主要介绍了Js生成随机数/随机字符串的方法,结合实例形式总结分析了5种Js生成随机数/随机字符串的操作技巧,需要的朋友可以参考下
    2020-05-05
  • 解读new Object()和Object.create()的区别

    解读new Object()和Object.create()的区别

    这篇文章主要介绍了解读new Object()和Object.create()的区别及说明,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-02-02
  • layui中的switch开关实现方法

    layui中的switch开关实现方法

    今天小编就为大家分享一篇layui中的switch开关实现方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-09-09
  • D3.js实现绘制折线图的教程详解

    D3.js实现绘制折线图的教程详解

    这篇文章主要为大家详细介绍了如何通过D3.js实现绘制折线图,文中的示例代码讲解详细,对我们学习D3.js有一定的帮助,需要的可以参考一下
    2022-11-11
  • Javascript将string类型转换int类型

    Javascript将string类型转换int类型

    今天网站有个小功能要判断用户购买商品数量是否大于库存数据,如果大于库存数量,就给予提示。
    2010-12-12
  • Open and Print a Word Document

    Open and Print a Word Document

    Open and Print a Word Document...
    2007-06-06
  • 详解Webwork中Action 调用的方法

    详解Webwork中Action 调用的方法

    这篇文章主要介绍了详解Webwork中Action 调用的方法的相关资料,需要的朋友可以参考下
    2016-02-02

最新评论