美文网首页
ENJOY 前端代码规范-初版

ENJOY 前端代码规范-初版

作者: 木木的mt | 来源:发表于2016-08-26 17:17 被阅读0次

本文档的目标是使 ENJOY 前端小组 JavaScript 代码风格保持一致


  1. 缩进统一使用 4个空格做为一个缩进层级,远离 2个空格 或 tab字符吧基友们
function hello (name) {
       console.log('hi', name)
}
  1. 单双引号统一纯字符串使用单引号,其他双引号
console.log('hello there')
$("<div class='box'>")
  1. 关键字后加空格
    关键字有介么多:if / else / for / while / function / switch / do / try / catch / finally
if (condition) { ... }   // ✓ ok
if(condition) { ... }    // ✗ avoid 
  1. 函数声明、具名函数表达式中,函数名和( 之间加空格
function name (arg) { ... }   // ✓ ok 
function name(arg) { ... }    // ✗ avoid
run(function () { ... })      // ✓ ok 
run(function() { ... })       // ✗ avoid 
  1. 二元运算符两侧必须有一个空格,一元运算符与操作对象之间不能有空格。
// ✓ ok 
var x = 2
var message = 'hello, ' + name + '!'
var a = !arr.length;
a++;
// ✗ avoid 
var x=2
var message = 'hello, '+name+'!'
var a = ! arr.length;
a + + ;
  1. , 后面要加空格,前别加呀
// ✓ ok 
var list = [1, 2, 3, 4]
function greet (name, options) { ... }
// ✗ avoid 
var list = [1,2,3,4]
function greet (name,options) { ... }
  1. 语句换行不加;,晓得不啦
// ✓ ok 
var list = [1, 2, 3, 4]
function greet (name, options) { ... }
//✗ avoid 
var list = [1, 2, 3, 4];
function greet (name, options) { ... };
  1. === 代替 ==
    例外: obj == null ( check null || undefined)
if (name === 'John')   // ✓ ok 
if (name == 'John')    // ✗ avoid 
if (name !== 'John')   // ✓ ok 
if (name != 'John')    // ✗ avoid 
  1. 对于 if...else...,在else前不要添加一个换行
// ✓ ok 
if (condition) {
  // ... 
} else {
  // ... 
}
// ✗ avoid 
if (condition) {
  // ... 
}
else {
  // ... 
}
  1. 在 if...else... 语句中,如果有多行,请使用省略块{...} , 一行的可以不用撒
// ✓ ok 
if (options.quiet !== true) console.log('done')
// ✓ ok 
if (options.quiet !== true) {
  console.log('done')
}
// ✗ avoid 
if (options.quiet !== true)
  console.log('done')
  1. 报错要处理昂
// ✓ ok 
run(function (err) {
  if (err) throw err
  window.alert('done')
})
// ✗ avoid 
run(function (err) {
  window.alert('done')
})
  1. 多余的换行是不允许滴
// ✓ ok 
var value = 'hello world'
console.log(value)
// ✗ avoid 
var value = 'hello world'
换行
换行
换行(打不出来,自行脑补可以伐?
console.log(value)
  1. 对于三目运算如果有多行,?: 请放在语句前面,
// ✓ ok 
var location = env.development ? 'localhost' : 'www.api.com'
// ✓ ok 
var location = env.development
  ? 'localhost'
  : 'www.api.com'
// ✗ avoid 
var location = env.development ?
  'localhost' :
  'www.api.com'
  1. ( , [, ,如果以这三个符号为开头,符号前加上;
// ✓ ok 
;(function () {
      window.alert('ok')
}())
// ✓ ok 
;[1, 2, 3].forEach(bar)
// ✓ ok 
;`hello`.indexOf('o')
// ✗ avoid 
(function () {
      window.alert('ok')
}())
// ✗ avoid 
[1, 2, 3].forEach(bar)
// ✗ avoid 
`hello`.indexOf('o')

当然,我们一般这么做:

var nums = [1, 2, 3]
nums.forEach(bar)

替换

;[1, 2, 3].forEach(bar)

更多待补充...

相关文章

  • ENJOY 前端代码规范-初版

    本文档的目标是使 ENJOY 前端小组 JavaScript 代码风格保持一致 缩进统一使用 4个空格做为一个缩进...

  • 代码规范

    代码规范 1. 概述 欢迎使用前端代码规范, 这里借鉴、引用的是京东前端代码规范。 遵循代码规范的目的在于增强团队...

  • 前端开发规范

    前端代码规范 Front Standard Guide 前端 JS 项目开发规范 规范的目的是为了编写高质量的代码...

  • 前端规范

    前端规范 规范说明 此为前端开发团队遵循和约定的代码书写规范,意在提高代码的规范性和可维护性。此规范为参考规范,统...

  • 代码规范

    代码规范 1. 概述 欢迎使用代码规范, 这个是我借鉴京东前端代码规范,组织的内部规范。旨在增强团队开发协作、提高...

  • 代码规范

    代码规范 作为前端工程化的第一步,就是要统一代码规范。而前端的代码规范,用三个插件就能保证(husky lint-...

  • 前端代码规范

    该文于 2013 年创作,经年修改,录以记之 统一的规范有助于团队合作开发,但规范又臭又长,又不利于阅读与遵守,所...

  • 前端代码规范

    命名规范 注释 eslint编码规范 使用两个空格进行缩进。eslint: indentfunction hell...

  • 前端代码规范

    一、前端编辑器 vscode 对angular、typescript有着非常友好的支持,轻便快捷,代码统一,一键格...

  • 前端代码规范

    一、格式化 1、代码缩进 4 个空格字符为一个缩进层级 2、语句结尾 每行语句结束必须使用分号结尾(“:”) 3、...

网友评论

      本文标题:ENJOY 前端代码规范-初版

      本文链接:https://www.haomeiwen.com/subject/lcqzsttx.html