[JavaScript] Date Object的月日起始值不同

摘要:[JavaScript] Date Object的月日起始值不同

記錄一下我花很多時間DEBUG遇到的問題

情境

原始資料中的Date是西元年,我要轉換成民國年的格式(年/月/日)顯示出來。

 

問題

顯示出來的日期總是多一天。

 

原始程式碼


return (d.getFullYear()) + '/' + (d.getMonth() + 1) + '/' + (d.getDate() + 1);

 

解決

查到Date ObjectgetMonth()getDate()不同之處在於起始值不同getMonth()是從0開始,getDate()則是從1開始,以下是這兩個Method的定義與用法。

 

getMonth()

Definition and Usage

The getMonth() method returns the month (from 0 to 11) for the specified date, according to local time.

Note: January is 0, February is 1, and so on.

 

getDate()

Definition and Usage

The getDate() method returns the day of the month (from 1 to 31) for the specified date.

文章內容僅提供技術分享,如有錯誤還請不吝指教。