0

この機能で、次の7日間の日数がわかります。だから私の問題は、日付全体ではなく数字だけを持ちたいということです。

私はこれを得る: Thu Jul 25 2013 15:08:36 GMT+0200 (CEST). 私だけが受け取るこれをどのように分割でき25ますか?

ここにjsコード:

Date.prototype.addDays = function(days) {
   var dat = new Date(this.valueOf())
   dat.setDate(dat.getDate() + days);
   return dat;
}

function getDates(startDate, stopDate) {
  var dateArray = new Array();
  var currentDate = startDate;
  while (currentDate <= stopDate) {
    dateArray.push(currentDate)
    currentDate = currentDate.addDays(1);
  }
  return dateArray;
}

var dateArray = getDates(new Date(), (new Date()).addDays(7));

for (i = 0; i < dateArray.length; i ++ ) {
    var arrays = dateArray[i];
    console.log(arrays);
}

前もって感謝します!

4

4 に答える 4

3

Date インスタンスから直接月日を取得できるため、文字列を分割する必要はないと思います。

    console.log(arrays.getDate());

JavaScript の Date インスタンスは、特定の方法で使用すると文字列に変換されますが、それらを操作するために記述したコードから明らかなように、多数の動作があります。

于 2013-07-25T13:19:22.047 に答える
1

あなたdateArrayDateオブジェクトの配列であり、 for ループarraysでは現在のアイテムになるため、他の関数で既に使用しているメソッドDateを使用して各アイテムの日の部分を取得できます。.getDate()

console.log(arrays.getDate());
于 2013-07-25T13:20:13.103 に答える
1

単に使用する

dateArray.push(currentDate.getDate())

関数の代わりgetDatesに、日付オブジェクトの代わりに数値の配列を返します。

于 2013-07-25T13:22:33.663 に答える
0

さて、私は.getDate()その間にプッシュイベントを追加しました:)最も簡単な方法:)

while (currentDate <= stopDate) {
  dateArray.push(currentDate.getDate())
  currentDate = currentDate.addDays(1);
}
于 2013-07-25T13:21:46.737 に答える