0
var myObject = {
value: 0,
increment: function (inc) {
this.value += typeof inc === 'number' ? inc : 1;
}
};
myObject.increment();
document.writeln(myObject.value); //1
myObject.increment(2);
document.writeln(myObject.value); //3
我可以理解這個函數。方法調用模式
但我很難理解爲什麼第二次調用的結果是3? 因爲在我心裏,結果應該是2
在我的腦海過程看起來像這樣:
var myObject = {
value:0,
increment: function(2){
0 += 2;}
};
,並導致在我看來應該是2,但什麼是有理由3 instand。
對象的'value'由於第一次調用增加而增加,所以當'myObject.increment(2)'時'1'而不是'0'被執行。 –
謝謝......我不確定對象在第一次調用後是否記得他的價值。 – David