1

週番号から日付を割り出そうとしています (日付は [date] から始まる週になります)。

date.js Web サイトのホームページ (画像を参照) で動作しますが、動作させることができません。

date.js ウェブサイトの動作

を使用しvar date = Date.parse('week 5 2013');ていますが、常に今日の日付が返されます。

私は何を間違っていますか?

ありがとう、アンガス

4

1 に答える 1

0

date.js に慣れていない場合は、年の n 番目の週を計算するのは非常に簡単です。

年の最初の週は、その年の最初の月曜日から始まります。

最初の週に木曜日が含まれる場合。

それ以外の場合は、年の最初の週 (2013 など)

前年の最終月曜日から始まります。

function nthWeek(y, n){
    if(y== undefined) y= new Date().getFullYear();
    var start= new Date(y, 0, 1);
    if(start.getDay()>4) start.setDate(start.getDate()+7);
    while(start.getDay()!= 1) start.setDate(start.getDate()-1);
    if(!n || n== 1) return start;
    start.setDate(start.getDate()+((n-1)*7));
    return start;
}




var s='week 4 2013';
var m=s.match(/(\d+)/g);

alert(nthWeek(m[1],m[0]));

/* 戻り値: (日付) Mon Jan 21 2013 00:00:00 */

于 2013-06-01T14:04:19.440 に答える