《编写可维护的 JavaScript》 读书笔记(编程风格)

最后更新:
阅读次数:

我们经常会碰到两个术语:编程风格(style guideline)编码规范(code convention)。其实,编程风格是编码规范的一种,用来规定代码的风格。编码规范还包括编程最佳实践、文件和目录的规划以及注释等方面。

基本的格式化

  • 保持良好的代码缩进。(2 个空格、4 个空格)
  • 单行代码长度不要过长。(保持在 80 个字符以内)
  • 在适当的时候插入一个空行

    • 在每个流程控制语句之前(比如 if 语句、for 语句)
    • 在方法之间
    • 在方法中的局部变量和第一条语句之间
    • 在多行或多行注释之前
    • 在方法的逻辑片段之间
  • 命名规范

    • 变量的命名:驼峰式大小写,即第一个单词是小写,后面每个单词的首字母都大写
var firstName;
var myComputer;
  • 函数和方法的命名:遵循驼峰式大小写,但是第一个单词应该为动词
function getName() {} // good
function isMan() {} // good
function theMan() {} // bad
  • 常量的命名:字母全部大写,单词间用下划线分开
const MAX_VALUE;
  • 构造函数的命名:首字母大写,名词
function Person() {}
  • 如何括住字符串?推荐单引号,因为经常使用 JavaScript 操作 HTML 代码段或 JSON 数据,而 JSON 数据和 HTML 的特性都是用的双引号,所以推荐用单引号。

  • 不要写奇葩的数字(比如 10..99010

  • 使用对象字面量和数组字面量

var obj = {}; // good
var obj = new Object(); // bad

var arr = []; // good
var arr = new Array(); // bad

注释

  • 不要拿单行注释当多行注释用
// 如果 flag 为真
// 提示注册成功
if (flag) {
alert("注册成功~");
}
  • 代码尾部不要使用多行注释
if (2 > 1) {
return true; /* 返回真 */
}
  • 只在代码难以理解时添加注释
  • 使用工具为你的代码添加文档注释(比如 sublime 插件 DocBlockr)
/**
* [reverse description]
* @param {[type]} str [description]
* @return {[type]} [description]
*/

function reverse(str) {
return Array.prototype.reduceRight.call(str, function(a, b) {
return a + b;
});
}

语句及表达式

  • 为你的流程控制语句加上大括号(比如 for、if、while 等语句)
// bad
if (a == b) return a;

// good
if (a == b) {
return a;
}
  • 若 switch 语句的 default 语句中没有逻辑代码,那就省略 default 语句

  • for 循环一般用来遍历数组,但是推荐使用数组内置的方法进行遍历

  • for–in 语句遍历对象属性。但是注意它也会遍历出继承来的可枚举属性(所以使用 Object.prototype.hasOwnProperty.call(obj,’prop’…) 过滤出它自己的属性)

以上的编程风格均摘自书中,仅供参考。网上近来比较流行的 JavaScript 编程风格是这个:Airbnb JavaScript Style Guide(推荐学习学习,毕竟 github 上都块 50000 star 了)