JavaScript优化
1. 删除注释
(ア) 脚本中的任何注释都应该在部署之前删除。进行开发时,注释十分重要,它可以帮助小组成员理解代码。但是,要部署时,注释会明显是JavaScript代码体积减小。
2. 删除制表符和空格
(ア) 优秀的程序员会有规则的缩进代码以增加其可阅读性。但是浏览器不需要这些额外的制表符和空格。但是不要忘记函数参数、赋值语句以及比较操作之间的空格。
(イ) 删除额外的制表符和空格时,在每行的结束使用分号有助于保持代码的语法含义。
3. 删除所有的换行
(ア) 只要你在程序的每行的结尾都正确的添加了分号,就不需要任何的换行符了。
(イ) 如果出于某种原因而不要删除换行,则要保证文件是Unix格式的,而非Windows格式的。Windows用两个字符表示换行(回车和新行,ASCII代码分别为13和10);Unix仅使用一个,所有,将换行从Windows格式转换为Unix格式也可以节约一些字符数。
4. 替换变量名
(ア) 替换变量名通常不是手工完成的,因为这个过程并非简简单单的文本查找、替换操作。
(イ) 基本的思想是所有的变量名(或者对象的私有特性)都应被替换成无意义的变量名。毕竟变量的名称对解释程序来说毫无意义,只是对阅读代码的开发人员来说有意义。不过,部署自负串时,应该将描述性的变量名替换成更简单、更短的名称。
(ウ) 要自己进行变量名替换时,要极其小心,尤其不推荐使用文本编辑器一般的查找替换方式,因为编辑器并不区分变量名和其他匹配给定模式的文本,例如,你有个称为on的变量。如果你尝试将on替换成别的文本,有可能将function结尾的on也给替换了,这样这个代码都错误了。
5. ECMASCRIPT Councher
(ア) 下载地址: http://www.saltstorm.net/depo/esc/
(イ) 格式的命令:cscript ESC.wsf -1 [0-4] –ow outoutfile.js inputfile1.js [inoutfile2.js]
6. 其他减少字节数的方法
(ア) 替换布尔值:true等于1,false等于0。
(イ) 缩短否定检测:代码中常常会出现检测某个值是否有效的句子。而大部分否定测试所作的就是判断某个变量是否为undefined、null、false。虽然这些都是正确的,但是逻辑非操作符来重写也有同样的效果。
7. 使用数组合对象字面量
(ア) var aTest=new Array; var aTest=[];
(イ) var oTest=new Object; var oTest={};
(ウ) var oFruit=new Object;oFruit.color=”red”; oFruit.Name=”Apple”; var oFruit={color:”red”,Name:”Apple”};