0
点赞
收藏
分享

微信扫一扫

【ES】156-重温基础:ES7系列

【ES】156-重温基础:ES7系列_搜索

ES7系列目录

  • Array.prototype.includes()方法
  • 指数操作符

所有整理的文章都收录到我《Cute-JavaScript》系列文章中,访问地址:http://js.pingan8787.com

1 Array.prototype.includes()方法

includes()​​用于查找一个值是否在数组中,如果在返回 ​true​​,否则返回 ​false​。

  1. ['a', 'b', 'c'].includes('a');     // true
  2. ['a', 'b', 'c'].includes('d');     // false

includes()​方法接收两个参数,搜索的内容开始搜索的索引,默认值为0,若搜索值在数组中则返回 ​true​​否则返回 ​false​。

  1. ['a', 'b', 'c', 'd'].includes('b');      // true
  2. ['a', 'b', 'c', 'd'].includes('b', 1);   // true
  3. ['a', 'b', 'c', 'd'].includes('b', 2);   // false

与 ​indexOf​方法对比,下面方法效果相同:

  1. ['a', 'b', 'c', 'd'].indexOf('b') > -1;  // true
  2. ['a', 'b', 'c', 'd'].includes('b');      // true

includes()与indexOf对比:

  • includes​​相比 ​​indexOf​​更具语义化, ​​includes​​返回的是是否存在的具体结果,值为布尔值,而 ​​indexOf​​返回的是搜索值的下标。
  • includes​​相比 ​​indexOf​​更准确, ​​includes​​认为两个 ​​NaN​​相等,而 ​​indexOf​​不会。
  1. let a = [1, NaN, 3];
  2. a.indexOf(NaN);     // -1
  3. a.includes(NaN);    // true

另外在判断 ​+0​​与 ​-0​​时, ​includes​​和 ​indexOf​的返回相同。

  1. [1, +0, 3, 4].includes(-0);   // true
  2. [1, +0, 3, 4].indexOf(-0);    // 1

2 指数操作符(**)

基本用法:

  1. let a = 3 ** 2 ; // 9
  2. // 等效于
  3. Math.pow(3, 2);  // 9

**​是一个运算符,也可以满足类似假发的操作,如下:

  1. let a = 3;
  2. a **= 2;    // 9


【ES】156-重温基础:ES7系列_数组_02


举报

相关推荐

0 条评论