日期:2014-05-16 浏览次数:20454 次
这里列出javascript运用过程中遇到的一些优化实例和代码技巧,以便回顾。
?
1、判断浏览器js引擎是否做了排序优化。 如下代码,如果baseHasDuplicate返回false说明浏览器没有做排序优化。一些浏览器会对排序进行优化,比如明知道恒等的情况,就没有必要再去执行客户的排序方法。--来着Sizzle代码
[0, 0].sort(function() {
baseHasDuplicate = false;
return 0;
});
某些浏览器js引擎对排序的优化代码,下面在恒等情况下,不再执行客户的排序方法。
function sort(comparefn) {
var custom_compare = (typeof(comparefn) === 'function');
function Compare(x,y) {
if (x === y) return 0;
if (custom_compare) {
return comparefn.call(null, x, y);
}
...
}
2、赋值时候的判空写法
经常用于函数的参数容错和初始化等过程中
a=a || [];//判断a是否存在,如果不存在则初始化空数组
b=b || {};//如果不存在,初始化空对象