2012-04-03 20 views
2

私は必要な出力形式を取得できますが、正しい時刻は取得できません。私は現在の日付からGMT文字列を取得

var dt = new Date(); 
var dt2 = dt.toString('yyyyMMddhhmmss'); 

任意のアイデア(4時間)GMTでそれを必要としますか?

dt.toUTCString(); 

をしかしYYYYMMDDHHMMSS列

EDITに戻ってそれを変換することができませんでしイム:私は実行して、標準の文字列形式でGMTを取得することができています

20120403031408 

:のように出力になります。私はdate.jsライブラリを使用しています

+0

'toString(format)'を取得するライブラリやスクリプトはありますか? [標準のメソッド](https://developer.mozilla.org/ja/JavaScript/Reference/Global_Objects/Date/toString)は引数を認識しません。 –

+0

謝罪、私はdate.jsを使用していますそれを反映する質問を編集しました。 – user1309548

答えて

1

date.jstoString(format)は、日付の書式を設定するとき "UTC" を指定するオプションはありません。ファイル末尾のmethod itselfは、DategetUTC... methodsのいずれも参照することはありません。これは、このようなオプションをサポートするために必要です。

Steven LevithanのdateFormatなど、別のライブラリを使用することを検討してもよいでしょう。これを使うと、UTC:formatの前に付けることができますいずれか、またはformattrueを渡す:

var utcFormatted = dateFormat(new Date(), 'UTC:yyyyMMddhhmmss'); 
var utcFormatted = dateFormat(new Date(), 'yyyyMMddhhmmss', true); 

// also 
var utcFormatted = new Date().format('yyyyMMddhhmmss', true); 

またDominic demonstratedとして、独自の関数を書くことができます。

+0

Steven Levithanの図書館でうまくいった。ありがとうございました – user1309548

1

鍵はgetUTC機能を使用することです:

https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Date

/* use a function for the exact format desired... */ 
function ISODateString(d){ 
    function pad(n) { return n < 10 ? '0'+n : n } 
    return d.getUTCFullYear() + '-' 
     + pad(d.getUTCMonth() +1) + '-' 
     + pad(d.getUTCDate()) + 'T' 
     + pad(d.getUTCHours()) + ':' 
     + pad(d.getUTCMinutes()) + ':' 
     + pad(d.getUTCSeconds()) + 'Z' 
} 

var d = new Date(); 
console.log(ISODateString(d)); // prints something like 2009-09-28T19:03:12Z 
関連する問題