簡體   English   中英

將日期轉換為JavaScript中的不同格式

[英]Convert date into different formats in javascript

如何使用javascript將格式為“ Sat Feb 14 2015 00:00:00 GMT + 0100(ora solare Europa occidentale)”的日期轉換為格式為“ 2015-02-05T10:17:13”的日期?

您要獲取的日期基本上是ISO-8601標准。

var date = new Date('Sat Feb 14 2015 00:00:00 GMT+0100');
var iso8601 = date.toISOString();
console.log(iso8601); // 2015-02-13T23:00:00.000Z

此轉換基於ECMAScript 5(ECMA-262第5版),因此在舊版JS中將不可用。 其他答案是正確的,而js將大大改善您的日期轉換。

MDN頁面的禮貌和此堆棧溢出問題 如果您希望支持EC5之前的版本,則可以使用polyfill:

if ( !Date.prototype.toISOString ) {
( function() {

  function pad(number) {
    var r = String(number);
    if ( r.length === 1 ) {
      r = '0' + r;
    }
    return r;
  }

  Date.prototype.toISOString = function() {
    return this.getUTCFullYear()
      + '-' + pad( this.getUTCMonth() + 1 )
      + '-' + pad( this.getUTCDate() )
      + 'T' + pad( this.getUTCHours() )
      + ':' + pad( this.getUTCMinutes() )
      + ':' + pad( this.getUTCSeconds() )
      + '.' + String( (this.getUTCMilliseconds()/1000).toFixed(3) ).slice( 2, 5 )
      + 'Z';
  };

}() );
}

有一個庫,稱為moment.js 使用它,您可以解析許多表示形式的datetime-strings,並將其轉換回任意您喜歡的datetime格式。

使用Date.parse()Date.toISOString()

var input = "Sat, Feb 14 2015 00:00:00 GMT+0100"
input = Date.parse(input);
input = new Date(input);
input = input.toISOString(); // "2015-02-13T23:00:00.000Z"

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM