2014-03-12 71 views
1

爲什麼我在控制檯中爲此以下語句獲得undefined帶變量的日期對象undefined

var someDate=new Date(1337986800000); 

enter image description here

但隨着出賦值給一個變量,它工作正常

new Date(1337986800000); 

enter image description here

爲什麼會這樣呢?

+0

@Dom,Date()返回日期。重複的問題談到返回一個函數的值 –

+0

http://stackoverflow.com/questions/3880093/var-variable-returns-undefined – Dom

回答

2

只需鍵入:

var someDate=new Date(1337986800000); someDate;

它是如何在控制檯工程。

當你只做new Date(1337986800000);時,構造函數返回打印在屏幕上的對象。

但是當您將它分配給一個變量時,該變量將保存返回值,因此控制檯無關,只能打印undefined。所以你需要明確地調用變量來獲得你期望的輸出

+0

我想知道爲什麼它說'未定義'。請解釋 –

0

你要做的是創建一個新的Date實例。在第一個例子中,你將實例存儲在一個變量中;你會得到未定義的,因爲構造函數本身沒有顯式地返回任何東西。 在第二個示例中,您要求控制檯評估表達式,該表達式正在調用日期構造函數,因此它只會返回結果實例。