2015-10-15 14 views
0

正在創建'類對象'嗎?如果這是正確的術語。爲什麼存儲在Object中的函數在運行結束時在控制檯中返回undefined?

var cat = { 
    eyes:2, 
    pur: function() { 
     console.log("puuuuurrrrr"); 
    } 
}; 
cat.pur(); 

在Chrome中,返回console.log消息,然後在下一行中定義爲undefined。想知道是什麼導致未定義在最後彈出。當我打電話給cat.eyes時,它不會這樣做。在Internet Explorer中,發生在console.log()事件之前。在nodeJS中,這發生在console.log之後。

+3

因爲沒有從'pur()'返回 – Tushar

回答

1

你第一次在控制檯中看到你寫的這是puuuuurrrrr

未定義是PUR的輸出(),這是什麼意思不確定的控制檯。

如果你會改變PUR到

console.log('whatever....'); 
return 'something'; 

比你會看到,而不是「未定義」值「的東西」。希望能解釋它。

+0

謝謝!你的回答確實幫助我理解。但我沒有得到這與如何在控制檯的函數外部使用'console.log(「hey」)'相關。 – WouldBeNerd

+1

如果您只是在開發人員工具控制檯中編寫console.log('asdfasdf')而不是運行該腳本,並且該腳本的輸出也會打印出來。所以它會打印console.log(不管)它將打印你寫的行的輸出。 console.log的輸出是未定義的,所以之後將打印未定義。 – sagie

+0

並再次感謝:) – WouldBeNerd

相關問題