Ottenere una stringa nel formato YYYYMMDD dall'oggetto JS date?

Sto cercando di usare JS per trasformare un oggetto data in una stringa in formato YYYMMDD. C'è un modo più semplice che concatenare Date.getYear(), Date.getMonth(), e Date.getDay()?

Soluzione

Pezzo di codice alterato che uso spesso:

Date.prototype.yyyymmdd = function() {
  var mm = this.getMonth() + 1; // getMonth() is zero-based
  var dd = this.getDate();

  return [this.getFullYear(),
          (mm>9 ? '' : '0') + mm,
          (dd>9 ? '' : '0') + dd
         ].join('');
};

var date = new Date();
date.yyyymmdd();
Commentari (9)

Questo tizio qui => http://blog.stevenlevithan.com/archives/date-time-format ha scritto una funzione format() per l'oggetto Javascript's Date, così può essere usato con formati letterali familiari.

Se hai bisogno di una formattazione completa della data nel tuo Javascript, usala. Altrimenti, se quello che vuoi fare è una tantum, allora concatenare getYear(), getMonth(), getDay() è probabilmente più semplice.

Commentari (0)

Sembra che mootools fornisca Date().format(): https://mootools.net/more/docs/1.6.0/Types/Date

Non sono sicuro che valga la pena includerlo solo per questo particolare compito.

Commentari (0)