ES7

news/2025/2/6 20:52:05/

ES7

1.Array.prototype.includes()

includes()作用,是查找一个值在不在数组里,若是存在则返回true,不存在返回false.

1.基本用法:

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

2.接收俩个参数:要搜索的值和搜索的开始索引

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

3.与ES6中的indexOf()比较

有些时候是等效的

['a', 'b', 'c'].includes('a')          //true
['a', 'b', 'c'].indexOf('a') > -1      //truevar arr = [1, 2, 3]
var a = 1;
arr.includes(a)   //true
arr.indexOf(a)    //0 
  • 在判断 +0 与 -0 时,被认为是相同的。
[1, +0, 3, 4].includes(-0)    //true
[1, +0, 3, 4].indexOf(-0)     //1
  • 只能判断简单类型的数据,对于复杂类型的数据,比如对象类型的数组,二维数组,这些,是无法判断的.
var arr = [1, [2, 3], 4]
arr.includes([2, 3])   //false
arr.indexOf([2, 3])    //-1

优缺点比较

  • 简便性

includes()返回的是布尔值,能直接判断数组中存不存在这个值,而indexOf()返回的是索引,这一点上前者更加方便。

  • 精确性

    两者都是采用===的操作符来作比较的,不同之处在于:对于NaN的处理结果不同。

    我们知道js中 NaN === NaN 的结果是false,indexOf()也是这样处理的,但是includes()不是这样的。

    let demo = [1, NaN, 2, 3]demo.indexOf(NaN)        //-1
    demo.includes(NaN)       //true
    

总结:

由于它对NaN的处理方式与indexOf不同,假如你只想知道某个值是否在数组中而并不关心它的索引位置,建议使用includes()。如果你想获取一个值在数组中的位置,那么你只能使用indexOf方法。

2.求幂运算符

基本用法:

3 ** 2  //9
效果同
Math.pow(3, 2) //9

由于是运算符,所以可以和 +=一样的用法

var b = 3;
b **= 2;
console.log(b); //9

 


http://www.ppmy.cn/news/401842.html

相关文章

js深度拷贝对象-ES7

ES7深度拷贝对象 Object.getOwnPropertyDescriptors 该函数返回一个对象所有的属性,甚至包括get/set函数。ES2017加入这个函数的主要动机在于方便将一个对象深度拷贝给另一个对象,同时可以将getter/setter拷贝。 const obj {name: joy,getName(){retu…

ES7集群操作

文章目录 一、核心概念二、环境依赖三、索引管理1.创建索引和分片副本数目2.集群管理工具2.1 chrome插件 elasticsearch-head下载地址操作界面 四、水平扩容1.当前集群2个节点2.增加节点进行水平扩容,可以提高索引的最大数据存储量3.增加副本数目进行水平扩容&#…

ES7-12内容详解

ES7-ES12知识点解析 一、ES7主要内容 1. Array Includes 在ES7之前,如果我们想判断一个数组中是否包含某个元素,需要通过 indexOf 获取结果,并且判断是否为 -1。 在ES7中,我们可以通过includes来判断一个数组中是否包含一个指…

es7集群的搭建

es7集群的搭建 一、需求二、前置条件三、搭建步骤1、下载es2、创建 es 用户并给es目录授权3、修改es的配置文件4、es01目录下 elasticsearch.yml 的一个完整的配置5、启动es集群6、查看集群是否启动 四、参考链接 一、需求 最近在看es相关的知识,此处简单记录一下e…

ES7集群搭建

文章目录 一、环境准备二、安装步骤1.解压软件2.创建用户3.修改配置文件3.1 vim /opt/module/es/config/elasticsearch.yml3.2 在 /etc/security/limits.conf 尾部添加3.3 在 /etc/security/limits.d/20-nproc.conf尾部添加3.4 在改/etc/sysctl.conf 尾部添加3.5 重新加载 4.启…

ES7新特性

1. ES7 新特性 1.1. Array.prototype.includes includes 方法用来检测是否包含某个数组,返回布尔类型值 其他检测包含字符串的方法: indexOf(),返回的是下标值,如果没有则返回-1 1.2 指数操作符 指数…

es7安装

es7需要linux内核要4.0以上 https://jingyan.baidu.com/article/4e5b3e197cdab4d0901e24ff.html 安装docker ​​​​​​Ubuntu Docker 安装 | 菜鸟教程 systemctl start docker vim /etc/security/limits.conf * soft nofile 65536 * hard nofile 65536 * soft noproc 6…

VALSE 2023 无锡线下参会个人总结 6月12日-3

VALSE2023 无锡线下参会个人总结 6月12日-3 6月12日会议日程安排Workshop:多模态大模型与提示学习左旺孟:预训练模型和语言增强的零样本视觉学习余宙:知识增强的多模态预训练和提示学习王云鹤:多模态交织:高效模型架构…