爱彼迎js规范学习(仅针对个人进行记录)

阅读: 评论:0

爱彼迎js规范学习(仅针对个人进行记录)

爱彼迎js规范学习(仅针对个人进行记录)

1.简写对象方法

const atom = {addValue(value) {return atom.value + value;},
};

2.简写对象属性

const lukeSkywalker = 'Luke Skywalker';
const obj = {lukeSkywalker,
};

3.能不用var尽量不用var
4.不要直接调用Object.prototype方法(因为怕被自身带有的函数所覆盖)

// 更好
const has = Object.prototype.hasOwnProperty; // 在模块范围内缓存一次查找

5.类转为数组时使用Array.from

const arrLike = { 0: 'foo', 1: 'bar', 2: 'baz', length: 3 };
const arr = Array.from(arrLike);

6.如果数组有多行,请在打开数组后和关闭数组括号之前使用换行符。

const arr = [[0, 1], [2, 3], [4, 5]];const objectInArray = [{id: 1,},{id: 2,},
];const numberInArray = [1,2,
];

7.使用解构,减少临时变量开销

// 更好的
function getFullName({ firstName, lastName }) {return `${firstName} ${lastName}`;
}const arr = [1, 2, 3, 4];
// 好的
const [first, second] = arr;
//注意,对象解构不用考虑顺序,但是数组解构一定按照顺序来

8.多使用模板字符串
9.多使用命名函数表达式

// 好的
const foo = function bar() {// ...
};

10.使用默认参数语法,而不是重写函数参数

// 好的
function handleThings(opts = {}) {// ...
}

11.保持function关键字的间距

// 好的
const x = function () {};
const y = function a() {};

12.永远不要重写参数

// 好的
function f2(obj) {const key = Object.prototype.hasOwnProperty.call(obj, 'key') ? obj.key : 1;
}
  1. 多参数的函数定义和调用,应该像其他多行列表一样缩进的风格
// 好的
function foo(bar,baz,quux,
) {// ...
}

14.方法可以返回 this 以帮助方法链接

class Jedi {jump() {this.jumping = true;return this;}setHeight(height) {this.height = height;return this;}
}const luke = new Jedi();luke.jump().setHeight(20);

15.不要直接在 export 上进行导出

// 这样不太好
// filename es6.js
export { es6 as default } from './AirbnbStyleGuide';// 这样比较好
// filename es6.js
import { es6 } from './AirbnbStyleGuide';
export default es6;
17.优先使用default
18.导入导出也需要和数组一样进行缩进
19.使用点语法访问属性
20.2 ** 10 == Math.pow(2, 10)
21.在所有的多行代码块使用括号
22.注释写在上方,而且要空一行,除非是在代码块的第一行;注释应当与//隔开一个空格
23.注释中如果表示有问题需要解决标注todo

class Calculator extends Abacus {constructor() {super();// TODO: total 需要变成一个可配置的选项参数al = 0;}
}

24.尖括号{}内需要左右添加空格

// 好
const foo = { clark: 'kent' };

25.对象末尾也添加逗号
26.分号问题,分号还是要的
27.parseInt尽量有第二个参数,参数一是几进制的
28.当不想缓存this的时候可以使用箭头函数
29.文件导入时导入默认模块的名字应当和文件名相同
30.模块导出a constructor / class / singleton / function library / bare object使用帕斯卡拼写法
31.略缩词应当全部为大写或者小写
32.常量可以完全大写
33.如果属性/方法的结果是布尔值,使用 isVal() 或 hasVal().

本文发布于:2024-02-05 06:32:45,感谢您对本站的认可!

本文链接:https://www.4u4v.net/it/170726361763885.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:爱彼迎   js
留言与评论(共有 0 条评论)
   
验证码:

Copyright ©2019-2022 Comsenz Inc.Powered by ©

网站地图1 网站地图2 网站地图3 网站地图4 网站地图5 网站地图6 网站地图7 网站地图8 网站地图9 网站地图10 网站地图11 网站地图12 网站地图13 网站地图14 网站地图15 网站地图16 网站地图17 网站地图18 网站地图19 网站地图20 网站地图21 网站地图22/a> 网站地图23