ES2016(ES7)新特性

ES2016(ES7)新特性

ES2016(ES7)中新增了以下两个小特性👇:

  • 数组includes()方法
  • 指数运算符,与Math.pow()相同

1、Array.prototype.includes()

【说明】
includes()函数用来判断一个数组是否包含一个指定的值,如果包含则返回true,否则返回false
【语法】

Array.includes(searchElement [, fromIndex])

【类型声明】

interface Array<T> {
  includes(searchElement: T, fromIndex?: number): boolean;
}

【方法】

// 判断一个数组是否包含一个指定的值,如果包含则返回true,否则返回false。
includes(valueToFind);
// 从索引位置(fromIndex)开始向后查找,判断元素是否存在。
includes(valueToFind, fromIndex)

【使用案例】

let arr = [2, 3, 4, 5, 6, 7, NaN];
console.log(arr.includes(3)); // true
console.log(arr.includes(7)); // true
console.log(arr.includes(NaN)); // true
console.log(arr.indexOf(NaN)); // -1 匹配不到

console.log(arr.includes(4, 0)); // true 从数组第一个位置开始查找,存在4这个元素,则返回true
console.log(arr.includes(4, 1)); // true 从数组第二个位置开始查找,存在4这个元素,则返回true
console.log(arr.includes(4, 2)); // true 从数组第三个位置开始查找,存在4这个元素,则返回true
console.log(arr.includes(4, 3)); // false 从数组第四个位置开始查找,不存在4这个元素,则返回false
console.log(arr.includes(4, 4)); // false 从数组第五个位置开始查找,不存在4这个元素,则返回false
console.log(arr.includes(4, 5)); // false 从数组第六个位置开始查找,不存在4这个元素,则返回false

// 如果fromIndex为负值,使用数组长度 + fromIndex计算出的索引作为新的fromIndex,如果新的fromIndex为负值,则fromIndex会重置为零,重新搜索整个数组。
console.log(arr.includes(4, -20)); // true <-> 相当于 arr.includes(4,0)
console.log(arr.includes(4, -1)); // false <-> 相当于 arr.includes(4,5)

2、** 指数运算符

console.log(2 ** -1); // 0.5
console.log(2 ** 0); // 1
console.log(2 ** 1); // 2
console.log(2 ** 10); // 1024
console.log(Math.pow(2, 10)); // 1024
posted @ 2023-07-11 16:11  前端开发者-少校  阅读(59)  评论(0编辑  收藏  举报