es6怎么判断数组是否含有某个子元素

方法:1、使用indexOf()函数,语法“数组对象.indexOf(值)”,如果返回元素位置则含有,如果返回“-1”则不含有;2、使用includes()函数,语法“数组对象.includes(值)”,返回true则含有,反之则不含有。

es6怎么判断数组是否含有某个子元素

本教程操作环境:windows7系统、ECMAScript 6版、Dell G3电脑。

es6判断数组是否含有某个子元素

方法1:使用indexOf()函数

indexOf用来查找某个元素的位置,如果不存在就返回-1。

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

1.png

注:indexOf()函数在判断数组是否包含某个元素时有两个小不足

  • 第一个是它会返回-1和元素的位置来表示是否包含,在定位方面是没问题,就是不够语义化。

  • 另一个问题是不能判断是否有NaN的元素。

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

2.png

方法2:使用includes()函数

includes()函数可以用来检测数组中是否包含某个值

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

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

3.png

【相关推荐:javascript视频教程、web前端】

以上就是es6怎么判断数组是否含有某个子元素的详细内容,更多请关注其它相关文章!