怎么样编写高效的js代码
2014-09-04 21:36
225 查看
今天,我学习了怎么样编写高效的js代码
1.管理好作用域和作用域链,通过多使用局部变量,减少with和try catch的使用。因为with和catch都是在作用域的顶部增加了一个对象。
2.高效的存取数据。存取数据有四种方式:字面量值,变量,数组元素和对象属性。
3.流控制:最快的条件判断:1)if语句:两个之内的离散值需要判断,大连的值能容易的分到不同的区间范围中。2)switch语句:超过2个少于10个离散值需要判断,条件值是非线性的,无法分离出区间范围。3)数组查询:超过10个值,条件对应的结果是单一值,而不是一系列操作。
4.循环的提升:将循环变量递减到0而不是递增,这样只判断条件是真是假不用做比较了;展开循环:Duff策略:每一次循环完成标准循环的1-8次。通过数组值的总数除以8来确定循环次数。
5.谨慎使用HTMLCollection对象。每次存取这类对象的属性,都会重新查询DOM中匹配的节点。
6.将要连接的字符串存储到数组中,调用join()方法合并在一些浏览器中比+号连接字符串要快点。
7.浏览器会限制js可以运行的最长时间,可以使用定时器将任务拆分执行。从而避免浏览器弹出终止运行的警告。
1.管理好作用域和作用域链,通过多使用局部变量,减少with和try catch的使用。因为with和catch都是在作用域的顶部增加了一个对象。
2.高效的存取数据。存取数据有四种方式:字面量值,变量,数组元素和对象属性。
3.流控制:最快的条件判断:1)if语句:两个之内的离散值需要判断,大连的值能容易的分到不同的区间范围中。2)switch语句:超过2个少于10个离散值需要判断,条件值是非线性的,无法分离出区间范围。3)数组查询:超过10个值,条件对应的结果是单一值,而不是一系列操作。
4.循环的提升:将循环变量递减到0而不是递增,这样只判断条件是真是假不用做比较了;展开循环:Duff策略:每一次循环完成标准循环的1-8次。通过数组值的总数除以8来确定循环次数。
5.谨慎使用HTMLCollection对象。每次存取这类对象的属性,都会重新查询DOM中匹配的节点。
6.将要连接的字符串存储到数组中,调用join()方法合并在一些浏览器中比+号连接字符串要快点。
7.浏览器会限制js可以运行的最长时间,可以使用定时器将任务拆分执行。从而避免浏览器弹出终止运行的警告。
相关文章推荐
- 怎么样编写高效的js代码
- 编写高效的js/jQuery代码 :rocket:
- js学习笔记-编写高效、规范的js代码-Tom
- 利用on和off方法编写高效的js代码
- 高效的jQuery与js代码编写技巧总结
- 编写高效的Android代码
- JavaScript 编写线程代码引用Concurrent.Thread.js
- 怎么样写一段高效,安全的sql查询代码
- 怎么样写一段高效,安全的sql查询代码
- 编写高效的C代码
- [转]编写高效的Android代码?
- 编写高效Java代码 java.lang.String类和java.util.Vector类
- 编写高效的C代码
- 编写高效的Android代码
- 如何高效编写android代码(4)
- 摸清java的本性,编写高效的代码
- 编写高效的Android代码
- 编写高效的数据库代码
- 如何编写优质、高效、益于维护的C++代码
- 编写高效的Android代码