JavaScript で指定された範囲内の日付の配列を生成する
JavaScript では、指定された範囲内の日付の配列を作成する必要がある場合があります。指定された 2 つの日付。これは、特に月と年の境界を扱う場合には、困難な作業になる可能性があります。
この問題に対処するには、JavaScript の Date オブジェクトを使用した解決策を検討してみましょう。
日を追加するためのカスタム拡張機能to a Date
まず、Date プロトタイプを拡張して addDays() メソッドを含めます。このメソッドは、日付に追加する日数を取得し、調整された日付を反映する新しい Date オブジェクトを返します。
Date.prototype.addDays = function(days) { var date = new Date(this.valueOf()); date.setDate(date.getDate() + days); return date; }
日付の配列を取得する関数
次に、2 つの Date オブジェクト (startDate と stopDate) をパラメーターとして受け取る getDates() という関数を定義します。
function getDates(startDate, stopDate) { var dateArray = new Array(); var currentDate = startDate; while (currentDate <= stopDate) { dateArray.push(new Date (currentDate)); currentDate = currentDate.addDays(1); } return dateArray; }
実装
これ関数は、dateArray という空の配列を初期化します。次に、startDate から開始し、stopDate に達するかそれを超えるまで、addDays() メソッドを使用して一度に 1 日ずつ進みます。有効な日付ごとに、新しい Date オブジェクトを dateArray に追加します。
次のコードは、これらの関数の使用法を示しています。
var range = getDates(new Date(), new Date().addDays(7));
このコードは、日付を表す Date オブジェクトの配列を作成します。今日から今日を含む 7 日間の日数。範囲変数には、日付オブジェクトの配列が含まれます。
デモ
このソリューションは、http://jsfiddle.net/jfhartsock/cM3ZU/ で試すことができます。機能デモ。
以上がJavaScriptで指定された範囲内の日付の配列を生成するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。