第一部分 编程风格
程序是写给人读的,只是偶尔让计算机执行一下 ——Donald Knuth
1、逻辑之间加空行。
2、命名体现特点,小驼峰。以JS语言核心采用的代码规范为准。 3、将null当做对象的占位符,不要滥用。 4、减少continue的使用,用条件语句替代(以前很喜欢用continue)。 5、for in循环不仅遍历当前对象的属性,还会遍历原型继承而来的属性,一般使用时用hasOwnProperty方法过滤。不要将for in用来遍历数组。 6、函数先声明,再使用。(以前写c有的习惯,到了JS函数提升的机制就忽略了)且在条件语句的外部声明。 7、不要将"use strict"用在全局作用域中,这样合并文件时会把其他文件也设置为"use strict",其他文件的非"strict"代码可能会出错。第二部分 编程实践
构建软件设计的方法有两种,一种是把软件做得很简单以至于明显找不到缺陷;
另一种是把它做得很复杂以至于找不到明显的缺陷 ——C.A.R.Hoare
1、各部分间的低耦合性。(感觉这个能涵盖以下所有)
2、通过JS修改元素样式时,最佳方法是操作CSS的className。 3、隔离应用逻辑(应用逻辑指的是和应用相关的功能性代码)。 4、尽量为函数传入有用、精确的信息。(如下)//不好的写法 function clickHandler(event) { showMouse(event); } function showMouse(event) { console.log("x:" + event.pageX + "y:" + event.pageY); } myElement.addEventListener("click", clickHandler(event)); //好的写法 function clickHandler(event) { showMouse(event.pageX, event.pageY); } function showMouse(x, y) { console.log("x:" + x + "y:" + y); } myElement.addEventListener("click", clickHandler(event));
5、抛出自己的错误。
6、不要动不属于自己的对象。第三部分 自动化
需要看更专业详细的书