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模式

相关推荐
小罗水8 分钟前
第17章 后台管理端与演示支持
javascript·vue.js·ecmascript
濮水大叔10 分钟前
不必把 Vue3 写成“麻花”:从状态碎片到对象协作,重新理解 Zova 的前端心智模型
前端·typescript·vue3·ioc·tsx·zova
阿米亚波25 分钟前
【C++ STL】std::unordered_multiset
开发语言·数据结构·c++·笔记·stl
我是唐青枫34 分钟前
Java ReentrantLock 实战详解:比 synchronized 更灵活的可重入锁
java·开发语言
QH139292318801 小时前
# R&S ZNB43 ZNA43 ZNA67矢量网络分析仪
开发语言·网络·php
Vuji1 小时前
MCP: 一条 tool 调用链路的旅程
前端·人工智能
脚踏实地皮皮晨2 小时前
003003001_Grid控件
开发语言·windows·算法·c#·visual studio
十年磨剑走天涯2 小时前
C++ STL 容器操作复杂度速查表
开发语言·c++
万少2 小时前
DeepSeek-V4-Flash 正式版上线了,但这 3 个坑我帮你提前踩了
前端·javascript·后端
明月_清风2 小时前
🚀 Palantir Foundry 本体论实战:当 Ontology 从"知识图谱"进化为"企业操作系统"
前端·后端