2016-09-02 20 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/2015から12/31/2015がほしいと思っています。私がここでやっている間違いは何ですか?

+2

「動作していません」と定義しますか? – Timo

+1

'lastyear.getFullYear()'ではなく 'new Date()'の最初の引数として 'lastyear'(Dateオブジェクト)を渡しています。最初の行を 'var lastyear = new Date()。getFullYear() - 1'とし、2行目を省略します。残ったままのままにしておきます。 – RobG

答えて

2

Date()コンストラクタを間違って使用していたため、問題が発生しました。 http://www.w3schools.com/js/js_dates.aspによると、Dateコンストラクタは、以下の入力を受け付けます:あなたの元のコードで

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

関連する問題