ES6推荐规范总结

it2022-05-08  7

个人学习笔记,具体参考:http://es6.ruanyifeng.com/#docs/style

1.块级作用域  (1)let 取代 var  (2)全局常量和线程安全,推荐const

2.字符串  (1)静态使用单引号

const a = ‘foobar’;

(2)动态使用反引号

const b = foo${a}bar;

3.解构赋值  优先解构赋值的有:  (1)使用数组成员对变量赋值  (2)函数的参数如果是对象的成员,对参数进行解构赋值  (3)函数返回多个值,优先对返回值采用对象解构

4.对象  (1)单行定义的对象,最后一个成员不以逗号结尾。多行定义的对象,最后一个成员以逗号结尾  (2)对象尽量静态化,一旦定义,就不得随意添加新的属性。如果添加属性不可避免,要使用Object.assign方法。  (3)如果对象的属性名是动态的,可以在创造对象的时候,使用属性表达式定义。  (4)对象的属性和方法,尽量采用简洁表达法

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

const itemsCopy = […items];

(2)使用 Array.from 方法,将类似数组的对象转为数组。

const foo = document.querySelectorAll(‘.foo’);  const nodes = Array.from(foo);

6.函数  (1)立即执行函数可以写成箭头函数的形式。  (2)那些需要使用函数表达式的场合,尽量用箭头函数代替。  (3)箭头函数取代Function.prototype.bind

const boundMethod = (…params) => method.apply(this, params)

(4)简单的、单行的、不会复用的函数,建议采用箭头函数。如果函数体较为复杂,行数较多,还是应该采用传统的函数写法。  (5)所有配置项都应该集中在一个对象,放在最后一个参数,布尔值不可以直接作为参数。

function divide(a, b, { option = false } = {}) {  }

(6)不要在函数体内使用 arguments 变量,使用 rest 运算符(…)代替。  (7)使用默认值语法设置函数参数的默认值

function handleThings(opts = {}) {  // …  }

7.Map 结构  注意区分 Object 和 Map,只有模拟现实世界的实体对象时,才使用 Object。如果只是需要key: value的数据结构,使用 Map 结构。因为 Map 有内建的遍历机制。

let map = new Map(arr);  for (let key of map.keys()) {  console.log(key);  }  for (let value of map.values()) {  console.log(value);  }  for (let item of map.entries()) {  console.log(item[0], item[1]);  }

8.Class  (1)总是用 Class,取代需要 prototype 的操作。  (2)使用extends实现继承

9.模块  (1)使用import取代require。

import { func1, func2 } from ‘moduleA’;

(2)使用export取代module.exports.如果模块只有一个输出值,就使用export default

import React from ‘react’;

class Breadcrumbs extends React.Component {  render() {  return

;  }  }; export default Breadcrumbs;

(3)不要在模块输入中使用通配符。  (4)如果模块默认输出一个函数,函数名的首字母应该小写。  (5)如果模块默认输出一个对象,对象名的首字母应该大写。

10.ESLint 的使用  用ESLint 工具检查代码规范

 

十分感谢原作者! --------------------- 作者:面包派  来源:  原文:https://blog.csdn.net/panbinxian/article/details/80373768  版权声明:本文为博主原创文章,转载请附上博文链接!


最新回复(0)