SORU
4 NİSAN 2010, Pazar


Nasıl ISO 8601 biçimlendirilmiş bir dize JavaScript çıktı mı?

Hangi gibi bir HTML parçacığını işlemek istiyorum tarihi bir nesne var:

<abbr title="2010-04-02T14:12:07">A couple days ago</abbr>

"" Bölümünü başka bir kütüphane. bir deyişle zamanın göreceli var Nasıl title bölümü oluşturmak mı?

Aşağıdaki denedim:

function isoDate(msSinceEpoch) {

   var d = new Date(msSinceEpoch);
   return d.getUTCFullYear()   '-'   (d.getUTCMonth()   1)   '-'   d.getUTCDate()   'T'  
          d.getUTCHours()   ':'   d.getUTCMinutes()   ':'   d.getUTCSeconds();

}

Ama o bana verir:

"2010-4-2T3:19"

CEVAP
19 Aralık 2011, PAZARTESİ


Zaten bir fonksiyonu toISOString() denir

var date = new Date();
date.toISOString(); //"2011-12-19T15:28:46.493Z"

Bir şekilde desteklemeyen a browser üzerinde iseniz, size örtülü var:

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';
    };

  }() );
}

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Jimmie Jones

    Jimmie Jones

    16 Kasım 2007
  • Randall P Studios

    Randall P St

    27 AĞUSTOS 2009
  • wwjoshdew

    wwjoshdew

    1 AĞUSTOS 2007