【JavaScript】ES6 新特性

概述

ES6(ECMAScript 6)是 JavaScript 的第六个版本,也称为 ES2015,引⼊了很多新特性来增强 JavaScript 语⾔的能⼒。

  1. let 和 const 声明变量,解决了使⽤ var 时出现的⼀些不合理的问题,如变量提升、重复声明等。
  2. 模板字符串
  3. 解构赋值,数组、对象、字符串以及函数参数等都可以进⾏解构赋值。
  4. 箭头函数
  5. Promise 对象Promise 是⼀种异步编程的解决⽅案,⽐回调函数更加强⼤。与 Promise 相关的还有 Generator 和 async。
  6. 函数参数默认值
  7. 对象字⾯量增强
  8. 类和继承,类可以被看做是 ES5 构造函数的语法糖(语法糖是一种让程序员能够以更简洁、更直观的方式编写代码的编程语言特性)。
  9. 迭代器
  10. ⽣成器
  11. 模块:在编译时就能确定模块的依赖关系,相⽐于 CommonJS 的运⾏时加载效率更⾼。
  12. Set 和 Map 数据结构:Set 是⼀种类似于数组的数据结构,但⽆重复的值。Map 是⼀种类似于对象的集合,但属性可以是任意类型。
  13. Symbol 数据类型:ES6 引⼊⼀种新的原始数据类型,表示独⼀⽆⼆的值。可作为对象的属性使⽤,确保属性名不重复。
  14. for...of 循环
  15. 异步函数 async/await
  16. 扩展运算符:可将⼀个数组转为⽤逗号分隔的参数序列。
  17. BigInt:ES6 引⼊了⼀种新的原始数据类型 BigInt(⼤整数),它能表示范围更⼤的数值。
  18. Iterator :Iterator 是⼀种接⼝,若部署在数据结构(如对象)上,该数据结构就能被 for...of 遍历。数组身上默认部署了该接⼝,所以能被遍历。

ES5 中的类和 ES6 中的类的 区别

  • 语法不同:ES5 中使⽤构造函数来定义类,⽽ ES6 中使⽤ class 关键字来定义类。
  • 继承⽅式不同:ES5 中使⽤原型链继承来实现继承,⽽ ES6 中使⽤ extends 关键字和 super 函数来实现继承。
  • 类属性的定义⽅式不同:ES5 中类属性定义在构造函数的原型对象上,⽽ ES6 中类属性定义在类的内部,并且需要使⽤ static 关键字来定义静态属性。
  • 类的调⽤⽅式不同:ES6 中需要使⽤ new 关键字来创建类的实例,⽽ ES5 中类的调⽤⽅式更加简单,只需要像函数⼀样调⽤即可。
相关推荐
wuyk55514 分钟前
【Socket 进阶之路】第 7 章 IO 多路复用 select & poll 完整实战|多 fd 监听、超时等待、优缺点横向对比
服务器·开发语言·网络·数据库·物联网
船厂电气自动化ai大模型23 分钟前
AI大模型与数学|第81天 课程:正交向量、正交基、格拉姆‑施密特(Gram‑Schmidt)正交化
开发语言·数据结构·人工智能·线性代数·机器学习
福兮说1 小时前
用 IndexedDB 存用户的文件,我踩过的五个坑
前端·javascript
lv__pf1 小时前
seata【实战 msb】
java·开发语言·后端
点纭1 小时前
C 语言 第七章 常用函数(3)
c语言·开发语言·算法·oracle·c#
胡志辉的博客2 小时前
【完全开源】IP 纯净度检测 可一键部署到自己的CF
前端·javascript·chrome·ip·chromium
事已至此先睡覺吧2 小时前
第三篇:Java 流程控制详解:条件判断、循环与跳转语句
java·开发语言
Hilaku2 小时前
作为面试官,我最怕遇到什么样的候选人?
前端·javascript·程序员
m0_734571762 小时前
深入理解5g <二十> dmrs
开发语言·5g
金金计较.3 小时前
Go语言-4
开发语言·golang