这是我参与11月更文挑战的第22天,活动详情查看:2021最后一次更文挑战
熟练使用 ES6 及更高版本对于我们在项目开发中可提高开发效率! 本文来学习 ES6 对数组的扩展方法: Array.includes()
前面文章学习了 JavaScript 中操作数组的一些方法(Array.splice()
/slice()
/map()
/reduce()
等高阶函数), JavaScript 并不完美但是不影响其运行, 这里学习其中的一些神奇"bug"
直达列表
ES6 - Array.includes()
ES6 引入了 Array.prototype.includes
方法, 返回一个布尔值,表示某个数组是否包含给定的值,与字符串的includes方法类似
Array.includes() | MDN
Array.includes()
方法用来判断一个数组是否包含一个指定的值,根据情况,如果包含则返回 true,否则返回 false。
includes() 使用
要注意这里不是 include
! 而是 includes
有个 s
, 不要记混淆了..
[1, 2, 3].includes(2) // true
[1, 2, 3].includes(4) // false
[1, 2, NaN].includes(NaN) // true
let pets = ['cat', 'dog', 'bat']
console.log(pets.includes('cat')) // output: true
使用语法:
在上面的方法使用 只有一个参数, 当然还有第二个参数: 表示开始搜索的位置, 其正负表示向后或向前搜索. 其使用语法如下:
arr.includes(valueToFind[, fromIndex])
valueToFind
: 表示需要查找的元素值。
注意: 使用 includes()比较字符串和字符时是区分大小写的。
fromIndex
(可选): 表示从fromIndex 索引处开始查找 第一个参数valueToFind
。如果为负值,则按升序从 array.length
+(表示俩者结合) fromIndex
的索引开始搜 (即使从末尾开始往前跳 fromIndex 的绝对值个索引,然后往后搜寻)。默认为 0。
返回值是一个布尔值 Boolean : 如果在数组中(或 fromIndex 指定的范围中)找到了 valueToFind,则返回 true,否则返回 false。
0
值将全部视为相等, 与符号无关(即 -0 与 0 和 +0 相等),但 false 不被认为与 0 相等。
如果 fromIndex 大于等于数组的长度,则将直接返回 false,且不搜索该数组:
let arr = ['a', 'b', 'c'];
arr.includes('c', 3); // false
arr.includes('c', 100); // false
相关阅读文章列表
- JavaScript 学习-函数剩余参数
- JS 小问题学习-函数可选参数
- JS 学习-for 循环
- JS 不完美亦可运行-自动加分号(
;
)问题、 - JS 不完美亦可运行-数组对象相加问题、
- JS 并不完美之箭头函数相关(二)、
- JS 并不完美~(一)浮点数
- JavaScript 高阶函数(一)
- JavaScript 高阶函数之 reduce
- 数组扁平化 Array.prototype.flat()
- 灵活操作数组数据 slice()
- 灵活操作数组-数组中间插入数据 splice()
学习 ES6
系列: