2018年11月7日

ECMAScript 6学习总结

参考链接

编程风格

let 取代 var

ES6提出了两个新的声明变量的命令:letconst。其中,let完全可以取代var,因为两者语义相同,而且let没有副作用。

'use strict';

if (true) {
  let x = 'hello';
}

for (let i = 0; i < 10; i++) {
  console.log(i);
}

在 let 和 const之间,建议优先使用 const,尤其是在全局环境,不应该设置变量,只应设置常量。

const [a, b, c] = [1, 2, 3];

静态字符串一律使用单引号或反引号,不使用双引号。动态字符串使用反引号。

const a = 'foobar';
const b = `foo${a}bar`;
const c = 'foobar';

使用数组成员对变量赋值时,优先使用解构赋值。 

const [first, second] = arr;

单行定义的对象,最后一个成员不以逗号结尾。多行定义的对象,最后一个成员以逗号结尾。

const a = { k1: v1, k2: v2 };
const b = {
  k1: v1,
  k2: v2,
};

使用扩展运算符(…)拷贝数组。

const itemsCopy = [...items];

那些需要使用函数表达式的场合,尽量用箭头函数代替。

立即执行函数可以写成箭头函数的形式。简单的、单行的、不会复用的函数,建议采用箭头函数。如果函数体较为复杂,行数较多,还是应该采用传统的函数写法。

(() => {
  console.log('Welcome to the Internet.');
})();

模块

使用import取代require

import { func1, func2 } from 'moduleA';

使用export取代module.exports

如果模块默认输出一个函数,函数名的首字母应该小写。

如果模块默认输出一个对象,对象名的首字母应该大写。

发表评论

电子邮件地址不会被公开。 必填项已用*标注