2016-10-01 79 views
-3

當我運行這段代碼JavaScript對象如何複製功能

d = new Date(); 
alert(d); 

我得到這樣的輸出:

Fri Sep 30 2016 22:09:45 GMT-0400 (Eastern Daylight Time) 

我怎麼能複製這個我自己的對象嗎?而不必做以下

function fakeDate() 
{ 
    this.date="fri sep 30 ..."; 
} 
d = new fakeDate(); 
alert(d.date); 

編輯

,這不是一個XY問題

與內置的Date對象,它返回一個字符串的工作,同時我注意到(?),當呼叫形式

d = new Date() 
alert(d); 

現在我想知道爲什麼和如何。 對不起,我不清楚。

+0

溶液這是一個[XY問題】(http://meta.stackexchange.com/a/66378/171858)。您試圖通過複製對象來解決問題,但這將解決您尚未透露的問題。 –

+0

能否請你解釋一下這個*我怎樣才能用我自己的對象複製這個* –

+0

不是xy的問題。我的意思是我想說alert(d)顯示一個字符串而不是alert(d.date)。 – Zachary

回答

0
function fakeDate() 
{ 
    this.date="fri sep 30 ..."; 
    fakeDate.prototype.toString= Date; 
    function Date() 
    { 
    return this.date; 
    } 
} 
d = new fakeDate(); 
alert(d); 

這是我想出了由於 object prototype tostring