版本与定位
- ES6 即 ECMAScript 2015,是 JS 的下一代标准;此后版本改用年份命名(ES2016、ES2017…)持续更新。
- 深入阅读三方库源码前需先掌握 ES6 语法。
箭头函数
this指向定义时的上下文对象,而非调用时的对象。- 没有
prototype属性,不能用new实例化。
const add = (a, b) => a + b;
模板字符串
- 用反引号包裹,
${}内可放变量、函数调用、表达式。 - 支持多行字符串,无需转义或拼接。
String.raw可保留原始反斜杠,避免路径等字符串被转义。
const msg = `我的名字叫:${name}`;
const path = String.raw`D:\work\node\config.js`;
解构赋值
- 数组解构支持剩余元素:
const [a, b, ...rest] = [1,2,3,4,5]。 - 对象解构支持嵌套提取:
const {name, addres:{city}} = person。
函数参数默认值
function greet(name = "Guest") { ... }
扩展运算符
- 数组:
...arr可展开传参、合并数组。 - 字符串:
...str拆分为单个字符。 - 对象:
{...obj}用于复制、合并、创建新对象。
Class 类
class关键字定义,本质是原型继承的语法糖。constructor初始化实例属性,实例方法通过this访问。static定义静态属性/方法,直接通过类名调用。extends实现继承,子类构造函数中须先调用super传参;重写方法时可用super.method()调用父类实现。- 类名约定首字母大写;类中方法不用
function关键字,方法间不加逗号。 - 注意方法内
this指向:普通函数/箭头函数直接使用this可能不指向实例。
模块化
- 通过
export/import导出导入,每个模块有独立作用域。 - 静态导入导出:编译时确定依赖关系,运行时不能改变。
- 单例:模块只加载一次,后续从内存读取。
- 作用域隔离:模块内部变量不污染全局。
来源:JS之ES6新特性
来源
- JS之ES6新特性
- THE END -
最后修改:2026年11月6日
非特殊说明,本博所有文章均为博主原创。
如若转载,请注明出处:https://mi-blog.cn/archives/631