工具介绍
Airbnb JavaScript 样式指南 () {
* JavaScript的处理方法大多合理*
> ** 注**:本指南假设您在使用 Babel, 并且要求您使用 Babel- preset-airbnb 或等效的 。 也假设你安装了shims/polyfuls 在你的应用, 与空气bnb-浏览器-shims或等效。
本指南也以其他语文提供。 见翻译
其他样式指南
- ES5(过期)
- 反应
- CSS-in-Java脚本
- CSS和Sass软件
- 鲁比
目录
1. 类型
1. 参考资料
1. 对象
1. 阵列
1. 重组
1. 字符串
1. 职能
1. 箭头函数
1. 类和构造器
1. 模块
1. 传动器和发电机
1. 属性
1. 变量
1. 牵引
1. 比较操作者和平等
1. 区块
1. 管制说明
1. 评论
1. 空白空间
1. 逗号
1. 分号
1. 铸造和胁迫类型
1. 命名公约
1. 接入者
1. 事件
1. 查询
1. ECMAScript 5 兼容性
1. ECMAScript 6+(ES 2015+) 互联网档案馆的存檔,存档日期2013-12-02. 样式
1. 标准图书馆
1. 测试
1. 业绩
1. 资源
1. 在野外
1. 翻译
1. JavaScript样式指南
1. 与我们谈论Java脚本
1. 贡献者
1. 许可证
1. 修正案
类型
<a name="类型-原始" ++/a><a name="1.1" ++/a>
- 1.1 ** 小学**: 当您访问原始类型时, 您直接研究其值 。
- " 弦 "
- " 数目 "
- `布尔'
- " 无"
- " 未界定 "
- " 同义词 "
- " 大点"
< br /> (韩语)
- 符号和 BigInts 无法忠实地进行多填充,因此在瞄准不支持它们的浏览器/环境时不应该使用它们。
<a name="类型-复合""></a><a name="1.2""></a"
- 1.2 ** 复杂**: 当您访问复杂类型时,您会使用其值的引用。
- `对象'
- " 阵列 "
- " 职能 "
< br /> (韩语)
回到顶部**
参考资料
<a name="参考文献-首发-const" ></a><a name="2.1"></a.
- 2.1 在所有参考文献中使用`cont';避免使用`var'。 eslint:`优先-召集 ' 、`不指定 '
为什么? 这将确保您无法重新指定您的引用, 这会导致错误和难以理解代码 。
<a name=" references-disallow-var""></a><a name="2.2"></a"
- 2.2级 如果您必须重新指定参考文献,请使用`let'而不是`var'。 埃斯林特: " 无瓦尔 "
为什么? `Let'是块状的,而不是像`var'那样的功能状。
<a name="References-block-scope" ++/a><a name="2.3"++/a.
- 2.3 注意`Let'和`const'均为区块范围,而`var'为功能范围。
在上述代码中,可以看到,引用 " a " 和 " b " 将产生引用错误,而 " c " 包含数字。 这是因为`a'和`b'被划为块状范围,而`c'则被划为块状功能。
回到顶部**
对象
<a name="objects-- no-n-new" ></a><a name="3.1"></a.
- 3.1 (韩语) 使用字面语法创建对象. eslint: " 无新对象 "
<a name="es6-computed-prities" ></a><a name="3.4"></a.
-3.2级 在创建具有动态属性名称的对象时使用已计算属性名称 。
为什么? 它们允许您定义一个物体在一个地方的所有属性.
<a name="es6-object-shorthand" ></a><a name="3.5"></a.
- 3.3 使用物体方法的简称。 Eslint:`物体-短手'
<a name="es6-object-concise" ></a><a name="3.6"></a.
- 3.4 使用财产价值简写。 Eslint:`物体-短手'
为什么? 报告篇幅较短,叙述性很强。
<a name="对象-分组-短手" ></a><a name="3.7"></a"
3.5 在对象声明的开头分组您的短手属性。
为什么? 比较容易知道哪些属性使用简写。
<a name="对象-引文-道具"></a><a 取名="3.8"></a.
- 3.6 - 6岁 只引用无效标识符的属性 。 斯林特:`引言-道具'
为什么? 一般来说,我们认为主观上更容易阅读。 它改进了语法突出,也更容易被许多JS引擎所优化.
<a name="物体-原型-已建" ++/a>
- 3.7级 不得直接称为`Object.promtotype'方法,如`hasOwnProperty'、`Property Consupenable'和`isPrototype Of'。 eslint: " 无原型建造 "
为什么? 这些方法可能会被有关对象上的属性所阴影 -- -- 考虑XQ has OwnProperty: false QQ -- -- 或者,该对象可能是一个无效对象(`Object.create(null)')。 在支持ES2022的现代浏览器中,或带有多填充,如<https:/