Js: ES新特性(一)

一、ES7新特性

1、Array.prototype.includes

定义: includes方法用来检测数组中是否包含某个元素,返回布尔类型值

2、指数操作符

定义: 在ES7中引入指数运算符[**],用来实现幂运算,功能与Math.pow()结果相同

语法:

复制代码
let result = 2 ** 10; // 1024

二、ES8 新特性

1、async和await

定义: async和await两种语法结合可以让异步代码像同步代码一样

  1. async函数特点

a、async函数的返回值为promise对象

b、promise对象的结果由async函数执行的返回值决定

  1. await表达式

a、await必须写在async函数中

b、await右侧的表达式一般为promise对象

c、await返回的是promise成功的值

d、await的promise失败了,就会抛出异常,需要通过try...catch捕获处理

2、Object.values和Object.entries

  1. Object.values()方法返回一个给定对象的所有可枚举属性值的数组

  2. Object.entries()方法返回一个给定对象自身可遍历属性[key, value]的数组

  3. Object.keys()方法返回一个给定对象的所有键名

三、ES9新特性

1、扩展运算符与rest参数

定义: rest参数与spred扩展运算符在ES6中已经引入,不过ES6中只针对于数组.

在ES9中为对象提供了像数组一样的rest参数和扩展运算符

2、正则扩展

  1. 命名捕获

  2. 反向断言

  3. dotAl模式

相关推荐
scofield_gyb2 小时前
Redis 6.2.7安装配置
前端·数据库·redis
cm6543202 小时前
C++中的原型模式变体
开发语言·c++·算法
除了辣条不吃辣2 小时前
ABAP 正则表达式
开发语言·正则表达式·abap·alv
木斯佳2 小时前
前端八股文面经大全: 蓝色光标前端一面OC(2026-03-23)·面经深度解析
前端·面试·vue·校招·js·面经
2301_792580002 小时前
Pyrocko + PSGRN/PSCMP小问题
前端
wuqingshun3141592 小时前
谈一下Daemon线程
java·开发语言
☆5662 小时前
C++中的策略模式进阶
开发语言·c++·算法
Yupureki2 小时前
《Linux系统编程》14.库的制作与原理
linux·运维·服务器·c语言·开发语言·c++
人间打气筒(Ada)2 小时前
go实战案例:如何基于 Conul 给微服务添加服务注册与发现?
开发语言·微服务·zookeeper·golang·kubernetes·etcd·consul