freeCodeCamp/guide/chinese/meta/free-code-camp-javascript-s.../index.md

2.1 KiB
Raw Blame History

title localeTitle
Free Code Camp JavaScript Style Guide 免费Code Camp JavaScript风格指南

或者酷人如何编写JavaScript。

缩进

始终使用两个空格
没有硬标签,永远。不,真的,不要这样做。

大括号

使用关键字if/else/else if时,请始终使用花括号。这可以防止很多歧义,并且可以防止某些边缘情况下的语法错误。

坏:

if (foo) bar(); 

好:

if (foo) { bar(); } 

到处都是卷曲的大括号!

function关键字后的空格,匿名函数除外

好:

function foo() { 
 } 
 
 var foo = function() { 
  // ... 
 }; 

坏:

function foo () 
 { 
  // ... 
 } 
 
 var foo = function () { 
  // ... 
 }; 

注释

  • 没有内联评论
  • //之后的单个空格
  • 不要使用多行注释/* */ 我们保留这些用于jsDocs。

关键词

  • 在ifelsewhile等之后的空格
  • 打开花括号应始终在同一行。

好:

if (true) { 
 // do the thing 
 } 

坏:

if(true) 
 { 
 // do the thing 
 } 

其他

避免别的和“早点结束”。在JavaScript中经常有很多缩进通常在处理异步代码并命名为“callback hell”时。你能做的任何事都可以减少应该做的缩进次数。有一点是避免使用else关键字。

这也具有使代码更清晰且更易于阅读的副作用。

坏:

someAsynFunc(function(err, data) { 
  if (err) { 
    callback(err); 
  } else { 
    // do stuff with data 
  } 
 }); 

好:

someAsynFunc(function(err, data) { 
  if (err) { 
    return callback(err); 
  } 
  // do stuff with data 
  // saves one indent 
 }); 

长串

长多行字符串应采用以下两种形式之一:

var longString = 
  'long strings should ' + 
  'be in this form, with the ' + 
  'operator ending the line'; 
 
 var foo = 'bar'; 
 
 var longString = [ 
  'long strings with variables such as ', 
  foo, 
  'should ', 
  'be in this form, an array of strings ', 
  'that are joined with the join array instance method', 
 ].join(''); 

......还有更多