编写高质量的JavaScript

高质量的JavaScript代码要求:
  • 可读的
  • 一致的
  • 可预测的
  • 看起来像是同一个人写的
  • 有文档的
注意:
1.减少全局变量,避免命名冲突
避免函数内部使用未声明变量(未声明变量默认为全局变量),坚持使用var声明变量(
  • 通过var创建的全局变量(在任何函数体之外创建的变量)不能被删除。
  • 没有用var创建的隐式全局变量(不考虑函数内的情况)可以被删除。
);
使用命名空间或者立即执行的匿名函数
2.采用单var模式声明变量
在同一个位置可以查找到函数所需的所有变量
避免当在变量声明之前使用这个变量时产生的逻辑错误(参照下一小节“声明提前:分散的 var 带来的问题”)
提醒你不要忘记声明变量,顺便减少潜在的全局变量
代码量更少(输入更少且更易做代码优化)
3.声明变量注意变量的作用域,避免“变量提前”
4.循环避免直接使用{}.length造成重复查询,消耗资源
5.数组采用for循环,对象采用for-in
6.避免使用隐式的类型转换,推荐使用'==='  '!==='进行比较,不仅比较值还会比较类型
7.避免使用eval(),避免给setInterval()、setTimeout()和Function()构造函数传入字符串
8.习惯使用花括号,即使可以省略
9.习惯使用空格,以下情况建议使用
  • for循环中的分号之后,比如 for (var i = 0; i < 10; i += 1) {...}
  • for循环中初始化多个变量,比如 for (var i = 0, max = 10; i < max; i += 1) {...}
  • 分隔数组项的逗号之后,var a = [1, 2, 3];
  • 对象属性后的逗号以及名值对之间的冒号之后,var o = {a: 1, b: 2};
  • 函数参数中,myFunc(a, b, c)
  • 函数声明的花括号之前,function myFunc() {}
  • 匿名函数表达式function之后,var myFunc = function () {};

另外,我们推荐在运算符和操作数之间添加空格。也就是说在+, -, *, =, <, >, <=, >=, ===, !==, &&, ||, +=符号前后都添加空格。

10.命名规范:

构造函数首字母大写,使用大驼峰命名方式,如MyConstructor()

普通函数采取小驼峰命名方式,如myFunction()

变量名采取小驼峰命名方式吗,或者单词均小写,单词之间采用'_'分隔

全局变量或者不常改变的常量,采用全大写命名

私有变量或私有方法,采用'_'开头

11.养成写注释的习惯

12.书写API文档

JavaScript领域有两个非常优秀的开源工具,它们是JSDoc Toolkit(http://code.google.com/p/jsdoc-toolkit/ )和YUIDoc(http://yuilibrary.com/projects/yuidoc )。

生成API文档的过程包括:

  • 以特定的格式来组织书写源代码
  • 运行工具来对代码和注释进行解析
  • 发布工具运行的结果,通常是HTML页面


13.生产环境中压缩代码,使用JSLint进行代码检查
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值