Skip to main content

ES6

ES6 在当前来说,是属于一种基本功,因为这是语言自己扩展,而不是一种需要导入的方案。

好处是什么

简单的话语来说:用更少的代码做更多的事。比如数组去重:

// 传统
function remove(iArr) {
var map = {};
var res = [];
for (var i = 0; i < iArr.length; i++) {
var num = iArr[i];
if (!map[num]) {
res.push(num);
map[num] = true;
}
}
return res;
}
var arr = [1, 1, 2, 2, 3, 3, 4];

// [1, 2, 3, 4]
console.log(remove(arr));
// ES6
let arr = [1, 1, 2, 2, 3, 3, 4];
// [1, 2, 3, 4]
console.log([...new Set(arr)]);

其他方面的增强:

  • 消除变量提升(letconst
  • 函数式编程(箭头函数、默认参数与收集参数)
  • 成熟的异步解决方案(Promise
  • 新增数据结构(SetMap
  • 面向对象(启用 class
  • ...

学习