中文原地址
1.对所有的引用使用 const 而非 var。这能确保你无法对引用重复赋值。
当需要变动引用时,使用let。
const和let都是块级作用域。
2.创建对象的方式:
const item = {};
使用对象属性的简写,且为简写的属性分组。
3.创建数组的方式:
const arr = [ ];
使用arr.push()去替代直接赋值。
使用拓展运算符去赋值数组: arrCopy = [...arr];
使用Array.from()把一个类数组对象转换成数组:
const foo = document.querySelectorAll(‘.foo‘);
const nodes = Aarry.from(foo);
4.解构:
使用解构存取和使用多属性对象:
function getFullName({ firstName, lastName }) { return `${firstName} ${lastName}`; }
对数组也使用解构赋值:
const arr = [1, 2, 3, 4]; const [first, second] = arr; // 等同于first = arr[0],second = arr[1]
返回多个值时使用对象解构:这样不用在意属性的顺序
function returnInput (input) { ... return { left, right, top, bottom }; } const { left, right } = processInput(input);
5.Strings
程序化生成字符串时,使用模板字符串代替字符串链接
function sayHi(name) { return `How are you, ${name}?`; }
6.函数
使用函数声明代替函数表达式
function foo() { }
立即调用的函数表达式:
(()=> { console.log(‘Welcome to the Internet. Please follow me.‘); })();
永远不要在非函数代码块(if,while)中声明一个函数,把那个函数赋给一个变量。
let test; if (current) { test = () => { ... }; }
不要使用arguments,可以选择rest语法...替代。rest是一个真正的数组,且能明确你要传入的参数
function cont(...args) { return args.join(‘‘); }
直接给函数的参数指定默认值,不要使用一个变化的函数参数
function fn(opts = {}) {...}
7.构造器
总是使用class,避免直接操作prototype。
使用extends继承。
方法可以返回this来帮助链式调用。
未完
时间: 2024-10-20 12:50:45