0

Datejsの使用-曜日を取得する

私もhttp://www.datejs.comを使用しています。そして、私もそれを見逃しているに違いありません。曜日番号を取得する方法はありますか?

配列の同等性を使用できることは知っていますが、ライブラリが非常に優れているため、それが欠落していると思います。

アップデート:

また、date getDayメソッドを使用できることも知っていますが、組み込みのdateオブジェクトの奇妙な動作を修正するためのdatejsの代替手段があると思います。

4

3 に答える 3

1

Dateあなたは標準的な方法で数を得ることができます、getDayまたはgetUTCday

new Date('2012-10-03').getDay(); // 2
于 2012-10-03T18:58:24.420 に答える
1

オブジェクトに組み込まれてgetDayいる関数を使用するだけです。Date

new Date().getDay();
于 2012-10-03T19:00:04.217 に答える
0

このコードは、それを計算するために存在するアルゴリズムの1つを使用して、1700/1/1以降の日付の曜日を計算します。

var weekDay = function(year, month, day) {
                  var offset = [0, 31, 59, 90, 120, 151, 181, 212, 243, 273, 304, 334];
                  var week   = {0:'Sunday', 
                                1:'Monday', 
                                2:'Tuesday', 
                                3:'Wednesday', 
                                4:'Thursday', 
                                5:'Friday', 
                                6:'Saturday'};
                  var afterFeb = (month > 2)? 0 : 1;
                  aux = year - 1700 - afterFeb;
                  // dayOfWeek for 1700/1/1 = 5, Friday
                  dayOfWeek  = 5;                      
                  // partial sum of days betweem current date and 1700/1/1
                  dayOfWeek += (aux + afterFeb) * 365;
                  // leap year correction
                  dayOfWeek += parseInt(aux / 4) - 
                               parseInt(aux / 100) + 
                               parseInt((aux + 100) / 400);
                  // sum monthly and day offsets
                  dayOfWeek += offset[month - 1] + (day - 1);
                  dayOfWeek = parseInt(dayOfWeek % 7);

                  return [dayOfWeek, week[dayOfWeek]];
              };  


console.log(weekDay(2013, 6, 15)[0] == 6, weekDay(2013, 6, 15)[1] == "Saturday");
console.log(weekDay(1969, 7, 20)[0] == 0, weekDay(1969, 7, 20)[1] == "Sunday");
console.log(weekDay(1945, 4, 30)[0] == 1, weekDay(1945, 4, 30)[1] == "Monday");
console.log(weekDay(1900, 1, 1)[0]  == 1,  weekDay(1900, 1, 1)[1] == "Monday");
console.log(weekDay(1789, 7, 14)[0] == 2, weekDay(1789, 7, 14)[1] == "Tuesday"); 
于 2013-06-15T07:47:21.883 に答える