2016-09-02 74 views
0

我怎樣才能獲得以前year開始date/month和結束date/month獲取上年開始月/日和結束月/日

下面是代碼,我都試過了,但它不工作...

var lastyear = new Date(new Date().getFullYear(), 0, 1); 
lastyear.setFullYear(lastyear.getFullYear() - 1); 
var start = (new Date(lastyear, 0, 1)).getTime(), 
    end = (new Date(lastyear, 11, 31)).getTime(); 

技術上我想01/01/201512/31/2015。我在這裏做的錯誤是什麼?

+2

定義'不工作'? – Timo

+1

您將'lastyear'(這是一個Date對象)作爲第一個參數傳遞給'new Date()'而不是'lastyear.getFullYear()'。使第一行'var lastyear = new Date()。getFullYear() - 1'並省略第二行。保持原樣。 – RobG

回答

2

您遇到了問題,因爲您正在使用Date()構造函數不正確。據http://www.w3schools.com/js/js_dates.asp,日期構造函數接受以下輸入:

new Date(year, month, day, hours, minutes, seconds, milliseconds) 

在你的原代碼,你傳遞一個Date對象進入「年」的說法。我改變:

new Date(lastyear, 0, 1) 

new Date(lastyear.getFullYear(), 0, 1) 

它解決了這一問題。


var lastyear = new Date(new Date().getFullYear() - 1, 0, 1); 
var start = (new Date(lastyear.getFullYear(), 0, 1)).getTime(), 
    end = (new Date(lastyear.getFullYear(), 11, 31)).getTime(); 

這是你正在尋找解決辦法嗎?

+1

這不解釋OP的問題,或者你的代碼如何修復它。 – RobG

+0

感謝您的反饋,@RobG。我已經更新了答案。 – adibble

相關問題