初めて Moment.js を使用しています。週の最初の日の日付を取得しようとしましたが、ヨーロッパでは通常月曜日です。何をしても、週の最初の曜日の結果として日曜日になります。
さまざまな言語 (ローカルまたはグローバル) をセットアップしようとしましたが、役に立ちませんでした。moment.js github pageの langs.min.js ファイルを使用します。「en-gb」と「fr」の言語ファイルには、次のコード行があります。
dow : 1, // Monday is the first day of the week.
それで、週の最初の曜日を尋ねると、月曜日の日付を取得しますよね? 出力として日曜日を取得し続けます。
// Create moment object
var localLang = moment();
// Set language to french
localLang.lang('fr');
// Test language
localLang.lang(); // Output: fr
// Retrieve first day of the week and format it
var dow = localLang.startOf('week').format('dddd DD-MM-YYYY'); // Output: dimanche 14-04-2013
Dimanche は日曜日のフランス語です。ご覧のとおり、moment.js は言語ファイルを正常に使用できますが、曜日構成は使用しません。
テストする moment.js および langs.js を使用した JSfiddle: JSFiddle
day(1)
編集: の代わりに を使用して、日曜日ではなく月曜日の日付を取得できますstartOf('week')
。しかし、使用しday(0)
ても結果として日曜日になります。言語ファイルで構成されているように、月曜日が週の最初の日ではないのはなぜですか。