萬盛學電腦網

 萬盛學電腦網 >> 腳本專題 >> javascript >> 巧用局部變量提升javascript性能

巧用局部變量提升javascript性能

 巧用局部變量可以有效提升javascript性能,下面有個不錯的示例,大家可以參考下

javascript中一個標識符所在的位置越深,它的讀寫速度也越慢。因此,函數中讀寫局部變量總是最快的,而讀寫全局變量通常是最慢的。一個好的經驗法則是:如果某個跨作用域的值在函數中被引用一次以上,那麼就把它存儲到局部變量裡。    例如:   代碼如下: <!-- 優化前 -->  <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>    該函數引用了三次document,而document是個全局對象。搜索該變量的過程必須遍歷整個作用域鏈接,直到最後在全局變量對象中找到。你可以通過以下方法減少對性能的影響:先將全局變量的引用存儲在一個局部變量中,然後使用這個局部變量代替全局變量。    例如:   代碼如下: <!-- 優化後 -->  <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> 
copyright © 萬盛學電腦網 all rights reserved