编写可维护的JavaScript读书笔记(1)

来源:互联网 发布:阿里云 海外主机 编辑:程序博客网 时间:2024/05/01 21:11

编程风格

基本的格式化

1.当一行的长度达到了单行最大字符数限制时,需要将一行拆为两行,第二行要有两个层级的缩进

2.null的使用

应用场景:

(1) 用来初始化一个变量,这个变量可能赋值为一个对象

(2) 用来和一个已经初始化的变量比较,这个变量可以是也可以不是一个对象

(3) 当函数的参数期望是对象时,用作参数传入

(4) 当函数的返回值期望是对象时,用作返回值传出

不应应用场景:

(1) 不要使用null来检测是否传入某个参数

function doSomething(arg1, arg2) {if(arg2 != null) {doElse();}}

(2) 不要用null来检测一个未初始化的变量

var person;if (person != null) {doSomethins();}
3.for-in循环中最好使用hasOwnProperty()过滤出实例属性,如果想要查找原型链,则应该加上相应的注释


4.建议总是将局部变量定义为函数内的第一条语句。并且将所有的var语句合并为一个语句,每个变量的初始化独占一行。赋值运算符应当对齐。对于那些没有初始值的变量来说,它们应该出现在var语句的尾部。

var value = 10,result = value + 10,i,len;

5.为了让立即执行的函数能够被一眼看出来,可以将函数用一对圆括号包裹起来。

var value = (function() {//bodyreturn {message: "hi"}}());
6.通过引用"use strict"使脚本以严格模式执行

不推荐将"use strict"用在全局作用域中,因为这会让文件中的所有代码都以严格模式来解析。

// 不好的写法-全局的严格模式"use strict";function doSomething() {//code}//好的写法function doSomething() {"use strict";// code}
7.JQuery核心风格指南规定,只有涉及到回调中解析JSON的情形下才可以使用eval()。Google的JavaScript风格指南只允许在将Ajax的返回值转换为JavaScript值得情形下使用eval()

0 0