1. 程式人生 > >web頁面優化經驗(不定期更新)

web頁面優化經驗(不定期更新)

程式碼層面 (編寫高質量的程式碼)

1、 例如多次操作一個全域性變數:
var a = 1;
function add()
{
    for(var i=0;i<10000;i++)
    {
        a+=1;
    }

}

這個程式碼就很不好,函式裡面沒有這個變數,每次都要順著作用域鏈往上尋找到全域性作用域。
正確的寫法應該這樣:

var  a = 1;
function add()
{
    var b = a;
    for(var i=0;i<10000;i++)
    {
        b+=1;
    }
    a = b;
}

先將全域性變數賦值給區域性變數,最後再將該區域性變數賦值給全域性變數。每次都不需要尋找到全域性作用域。這樣就加快了速度。

2、交換兩個數的值
var a = 2;
var b = 3;
a = a+b;    //此時a=5,b=3
b = a-b;    //此時a=5,b=2
a = a-b;    //此時a=3,b=2,成功

這段程式碼不使用額外空間,只有加減操作,減少記憶體消耗,比平常的定義臨時變數好。