Googleカレンダーは私にrfc3339をスローしますが、私の日付はすべて1970年1月からのミリ秒単位です。
rfc3999:
2012-07-04T18:10:00.000+09:00
javascriptの現在の時刻:(new Date())。getTime():
1341346502585
私はカウントダウンのみを扱い、日付は扱わないため、ミリ秒が好きです。
Googleカレンダーは私にrfc3339をスローしますが、私の日付はすべて1970年1月からのミリ秒単位です。
rfc3999:
2012-07-04T18:10:00.000+09:00
javascriptの現在の時刻:(new Date())。getTime():
1341346502585
私はカウントダウンのみを扱い、日付は扱わないため、ミリ秒が好きです。
小数点以下 3 桁と「T」を含むその形式の日付時刻は、またはコンストラクターに渡されたときの動作が明確に定義されています。Date.parse
Date
console.log(Date.parse('2012-07-04T18:10:00.000+09:00'));
// 1341393000000 on all conforming engines
ただし、常に JavaScript 仕様に準拠した入力を提供するように注意する必要があります。そうしないと、無意識のうちに実装定義の解析に戻ってしまう可能性があります。これは実装定義であるため、ブラウザーや環境全体で信頼性が低くなります。これらの他の形式については、正規表現を使用した手動解析などのオプションがあります。
var googleDate = /^(\d{4})-(\d{2})-(\d{2})T(\d{2}):(\d{2}):(\d{2})\.(\d{3})([+-]\d{2}):(\d{2})$/;
function parseGoogleDate(d) {
var m = googleDate.exec(d);
var year = +m[1];
var month = +m[2];
var day = +m[3];
var hour = +m[4];
var minute = +m[5];
var second = +m[6];
var msec = +m[7];
var tzHour = +m[8];
var tzMin = +m[9];
var tzOffset = tzHour * 60 + tzMin;
return Date.UTC(year, month - 1, day, hour, minute - tzOffset, second, msec);
}
console.log(parseGoogleDate('2012-07-04T18:10:00.000+09:00'));
またはMoment.jsのようなフル機能のライブラリ。