這帶來(lái)的好處是內(nèi)部函數(shù)可以訪問(wèn)定義它們的外部函數(shù)的參數(shù)和變量。
首先,我們來(lái)構(gòu)造一個(gè)簡(jiǎn)單的對(duì)象。
復(fù)制代碼 代碼如下:
var testObj = {
value: 10,
add: function(inc){
this.value += (typeof inc === "number") ? inc : 1;
}
};
testObj.add();
testObj.value; // 11
testObj.add(2);
testObj.value; // 13
復(fù)制代碼 代碼如下:
var testObj = (function(){
var value = 10;
return {
add: function(inc){
value += (typeof inc === "number") ? inc : 1;
},
getValue: function(){
return value;
}
};
})();
testObj.add();
testObj.getValue(); // 11
testObj.add(2);
testObj.getValue(); // 13
我們?cè)倮^續(xù)看一個(gè)構(gòu)造函數(shù)調(diào)用的例子。
復(fù)制代碼 代碼如下:
var MyObj = function(str){
this.status = str;
};
MyObj.prototype.getStatus = function(){
return this.status;
};
var obj = new MyObj("javascript");
obj.getStatus(); // "javascript"
復(fù)制代碼 代碼如下:
var obj = function(status){
return {
getStatus: function(){
return status;
}
};
};
var myObj = obj("javascript");
myObj.getStatus(); // "javascript"
新聞熱點(diǎn)
疑難解答
圖片精選