546 Stimmen

Get String in YYYYMMDD Format von JS Datum Objekt?

Ich versuche, JS zu verwenden, um eine date object in eine Zeichenkette in YYYYMMDD Format. Gibt es einen einfacheren Weg als die Verkettung von Date.getYear() , Date.getMonth() y Date.getDay() ?

711voto

o-o Punkte 7969

Geänderter Code, den ich oft verwende:

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();

393voto

Pierre Guilbert Punkte 4789

Es gefiel mir nicht, den Prototyp zu ergänzen. Eine Alternative wäre:

var rightNow = new Date();
var res = rightNow.toISOString().slice(0,10).replace(/-/g,"");

<!-- Next line is for code snippet output only -->
document.body.innerHTML += res;

255voto

Ramzi SAYAGH Punkte 2387

Sie können die toISOString Funktion :

var today = new Date();
today.toISOString().substring(0, 10);

Sie erhalten dann das Format "jjjj-mm-tt".

173voto

H6. Punkte 29084

Moment.js könnte Ihr Freund sein

var date = new Date();
var formattedDate = moment(date).format('YYYYMMDD');

54voto

gongqj Punkte 683
new Date('Jun 5 2016').
  toLocaleString('en-us', {year: 'numeric', month: '2-digit', day: '2-digit'}).
  replace(/(\d+)\/(\d+)\/(\d+)/, '$3-$1-$2');

// => '2016-06-05'

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X