一 函數(shù)預(yù)定義屬性和方法:
二 、自定義函數(shù)屬性和方法(可以在函數(shù)體內(nèi)或體外定義).
自定義屬性的應(yīng)用:某個(gè)函數(shù)的第幾次調(diào)用
var x=0;//定義一個(gè)全局變量
function f(){
????//some codes...
????return x++;//返回的x代表了調(diào)用次數(shù)
}
for(var i = 0;i <10;i++){//模擬十次調(diào)用
????console.log(f());
}
上述函數(shù)存在的問題是:為了一個(gè)功能 定義了一個(gè)與其他代碼毫不相關(guān)的全局變量x;
很明顯缺乏封閉性,改進(jìn)如下:
function f(){
????//some codes...
????return f.x++;
}
f.x = 0;//自定義函數(shù)屬性x
for(var i = 0;i <10;i++){//模擬十次調(diào)用
????console.log(f());
}
上述代碼保證了函數(shù)結(jié)構(gòu)的封閉性靴庆。