Node.js Style Guide
2015-09-01 10:40:29 0 举报
AI智能生成
Node.js Style Guide 来自https://github.com/felixge/node-style-guide
作者其他创作
大纲/内容
条件
用描述语言表示条件:
var isValidPassword = password.length >= 4
&& /^(?=.*\d).{4,}$/.test(password);
if (isValidPassword) {
console.log('winning');
}
三目运算:
var foo = (a === b)
? 1
: 2;
使用 === operator
函数
函数返回尽量早:
正确:
function isPercentage(val) {
if (val < 0) {
return false;
}
if (val > 100) {
return false;
}
return true;
}
错误:
function isPercentage(val) {
if (val >= 0) {
if (val < 100) {
return true;
} else {
return false;
}
} else {
return false;
}
}
函数短小,最好不要超过15行
Closure
为closures命名:
正确:
req.on('end', function onEnd() {
...
});
错误:
req.on('end', function() {
...
});
尽量不要嵌套closures
不要修改 built-in prototypes
Comment一定详实
格式
每行80个字
结尾用分号
缩进2 Spaces
结尾无空白字符
用单引号,不要双引号,除非是JSON
圆括号,花括号的格式:
if (true) {
console.log('winning');
}
Method chaining:
User
.findOne({ name: 'foo' })
.populate('bar')
.exec(function(err, user) {
return true;
});
变量
每行定义一个变量,不要用逗号
var keys = ['foo', 'bar'];
var values = [23, 42];
用骆驼式名字定义变量,函数,class
常量Constants全用大写
创建Object / Array:
var a = ['hello', 'world'];
var b = {
good: 'code',
'is generally': 'pretty',
};
禁
同这些函数保持距离:
Object.freeze
Object.preventExtensions
Object.seal
with
eval
不要使用setter,但getter可随便
0 条评论
下一页