欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

巧用局部變量提升javascript性能

 更新時(shí)間:2014年02月24日 15:44:36   作者:  
巧用局部變量可以有效提升javascript性能,下面有個(gè)不錯(cuò)的示例,大家可以參考下
javascript中一個(gè)標(biāo)識(shí)符所在的位置越深,它的讀寫速度也越慢。因此,函數(shù)中讀寫局部變量總是最快的,而讀寫全局變量通常是最慢的。一個(gè)好的經(jīng)驗(yàn)法則是:如果某個(gè)跨作用域的值在函數(shù)中被引用一次以上,那么就把它存儲(chǔ)到局部變量里。

例如:
復(fù)制代碼 代碼如下:

<!-- 優(yōu)化前 -->
<script type="text/javascript">
function initUI () {
var bd = document.body,
links = document.getElementByTagName("a"),
i=0,
len=links.length;
while(i < len){
update(links[i++]);
}

document.getElementById("go-btn").onclick = function(){
start();
}

bd.className = "active";
}
</script>

該函數(shù)引用了三次document,而document是個(gè)全局對(duì)象。搜索該變量的過程必須遍歷整個(gè)作用域鏈接,直到最后在全局變量對(duì)象中找到。你可以通過以下方法減少對(duì)性能的影響:先將全局變量的引用存儲(chǔ)在一個(gè)局部變量中,然后使用這個(gè)局部變量代替全局變量。

例如:
復(fù)制代碼 代碼如下:

<!-- 優(yōu)化后 -->
<script type="text/javascript">
function initUI () {
var doc=document,
bd = doc.body,
links = doc.getElementByTagName("a"),
i=0,
len=links.length;
while(i < len){
update(links[i++]);
}

doc.getElementById("go-btn").onclick = function(){
start();
}

bd.className = "active";
}
</script>

相關(guān)文章

最新評(píng)論