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()函数的用法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

相关文章

  • JS块级作用域和私有变量实例分析

    JS块级作用域和私有变量实例分析

    这篇文章主要介绍了JS块级作用域和私有变量,结合实例形式较为详细的分析了javascript块级作用域和私有变量相关概念、原理、操作技巧,需要的朋友可以参考下
    2019-05-05
  • JavaScript运动函数实例详解

    JavaScript运动函数实例详解

    这篇文章主要为大家详细介绍了JavaScript的运动函数,使用实例在论证,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-02-02
  • 动态加载script文件的两种方法

    动态加载script文件的两种方法

    第一种就是利用ajax方式,第二种是,动态创建一个script标签,设置其src属性,通过把script标签插入到页面head来加载js,感兴趣的朋友可以了解下
    2013-08-08
  • JavaScript关联数组用法分析【概念、定义、遍历】

    JavaScript关联数组用法分析【概念、定义、遍历】

    这篇文章主要介绍了JavaScript关联数组用法,结合实例形式分析了关联数组的概念、定义与遍历操作相关实现技巧,需要的朋友可以参考下
    2017-03-03
  • js图片延迟技术一般的思路与示例

    js图片延迟技术一般的思路与示例

    现将img元素对应的src路径设置为背景图片,而该img所对应的url路径存放在一个自设的属性中
    2014-03-03
  • layui框架中layer父子页面交互的方法分析

    layui框架中layer父子页面交互的方法分析

    这篇文章主要介绍了layui框架中layer父子页面交互的方法,结合实例形式分析了layer父子页面交互的常用技巧以及layer弹出多个iframe找到父页面的操作方法,需要的朋友可以参考下
    2017-11-11
  • javascript操作数组详解

    javascript操作数组详解

    这篇文章主要详细介绍了javascript操作数组的方法以及示例,需要的朋友可以参考下
    2014-12-12
  • javascript设计模式之迭代器模式

    javascript设计模式之迭代器模式

    这篇文章主要为大家详细介绍了javascript设计模式之迭代器模式,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-01-01
  • js实现图片360度旋转

    js实现图片360度旋转

    本文主要介绍了js实现图片360度旋转的思路与方法。具有很好的参考价值,下面跟着小编一起来看下吧
    2017-01-01
  • Javascript的表单验证-初识正则表达式

    Javascript的表单验证-初识正则表达式

    JavaScript 可用来在数据被送往服务器前对 HTML 表单中的这些输入数据进行验证。接下来通过本文给大家介绍Javascript的表单验证-初识正则表达式,对js表单验证正则表达式相关知识感兴趣的朋友一起学习吧
    2016-03-03

最新评论