在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問答/HTML5  網(wǎng)絡(luò)安全  HTML/ js this問題

js this問題

function foo(num) {
    console.log("foo: " + num);//6 7 8 9
    this.count++;
}

foo.count = 0;

var i;
for(i = 0; i < 10; i++){
    if(i > 5){
        foo( i );
    }
}
console.log(foo.count);// 0
console.log(count);//NaN

輸出6,7,8,9我是知道的,
輸出0 是因?yàn)閠his.count指向的是全局。
問題是創(chuàng)建出來的隱試count為什么是NaN???

突然想起來了,會(huì)不會(huì)是這樣:
調(diào)用foo函數(shù),隱試創(chuàng)建了一個(gè)全局屬性count,
count = undefined。undefined ++ 就是NaN???

回答
編輯回答
熊出沒

count初始值為undefined
對(duì)undefined進(jìn)行++操作,使得count變?yōu)镹aN

2017年10月14日 23:34
編輯回答
故林

count都沒定義,你定義的是foo

2017年6月17日 04:33
編輯回答
眼雜

this.count 是全局的,如果沒有定義就是 undefined ++ ,當(dāng)然是NaN

2018年3月17日 12:14
編輯回答
薄荷綠

未定義count

2017年2月2日 15:08
編輯回答
慢半拍
function foo(num) {
    console.log("foo: " + num);//6 7 8 9
    this.count++;// window.count++  Number(undefined)++
}
console.log(count);//NaN
2018年3月24日 03:01