ES6后的编程风格
v8引擎只在严格模式下支持let和const。这实际上意味着将来所有的变成都是针对严格模式的。
变量声明尽量使用const,let,var这种形式。
静态字符串一律使用单引号或反引号,不使用双引号。动态字符串使用反引号。(这样用在拼接字符串上,会少写很多代码。)
使用数组成员对变量赋值,优先使用解构赋值。const [a,b,c]=[1,2,3];函数的参数如果是对象的成员,优先使用解构赋值。
对象:单行定义的对象,最后一个成员不以逗号结尾。多行定义的对象,最后一个成员以逗号结尾。对象尽量静态化,一旦定义,就不得随意添加新的属性。如果添加属性不可避免,要使用Object.assign方法。如果对象的属性名是动态的,可以在创造对象时使用属性表达式定义。另外,对象的属性和方法尽量采用简洁表达法,这样易于描述和书写。
数组:使用扩展运算符(...)复制数组。 const copy=[...items];使用Array.from方法将类似数组的对象转为数组。
函数:立即执行函数可以写成箭头函数的形式。那些需要使用函数表达式的场合,尽量用箭头函数代替。因为这样更简洁,而且绑定了this。简单的、单行的、不会复用的函数,建议采用箭头函数。如果函数体较为复杂,行数较多,还是应该采用传统的函数写法。所有配置项都应该集中在一个对象,放在最后一个参数,布尔值不可以直接作为参数。使用默认值语法设置函数参数的默认值。
注意区分Object和Map,只有模拟实体对象时才使用Object。如果只是需要key:value的数据结构,则使用Map.因为Map有内建的遍历体制。
--《es6标准入门 第2版》kindle版本真的很差劲。代码各种断行。