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

5voto

Strelok Punkte 47933

Dieser Typ hier => http://blog.stevenlevithan.com/archives/date-time-format schrieb eine format() Funktion für die Javascript's Date Objekt, so dass es mit den bekannten literalen Formaten verwendet werden kann.

Wenn Sie eine vollwertige Datumsformatierung im Javascript Ihrer Anwendung benötigen, verwenden Sie es. Andernfalls, wenn das, was Sie tun wollen, ist eine einmalige, dann Verkettung getYear(), getMonth(), getDay() ist wahrscheinlich am einfachsten.

5voto

NoobTW Punkte 2253

Wie wäre es mit Tag.js ?

Es ist nur 2KB groß, und Sie können auch dayjs().format('YYYY-MM-DD') .

https://github.com/iamkun/dayjs

5voto

yajuliv Punkte 51

Utilice padStart :

Date.prototype.yyyymmdd = function() {
    return [
        this.getFullYear(),
        (this.getMonth()+1).toString().padStart(2, '0'), // getMonth() is zero-based
        this.getDate().toString().padStart(2, '0')
    ].join('-');
};

5voto

Chawathe Vipul S Punkte 1548
[day,,month,,year]= Intl.DateTimeFormat(undefined, { year: 'numeric', month: '2-digit', day: '2-digit' }).formatToParts(new Date()),year.value+month.value+day.value

o

new Date().toJSON().slice(0,10).replace(/\/|-/g,'')

4voto

Eine weitere Antwort zur Vereinfachung und Lesbarkeit.
Auch das Bearbeiten bestehender vordefinierter Klassenmitglieder mit neuen Methoden wird nicht empfohlen:

function getDateInYYYYMMDD() {
    let currentDate = new Date();

    // year
    let yyyy = '' + currentDate.getFullYear();

    // month
    let mm = ('0' + (currentDate.getMonth() + 1));  // prepend 0 // +1 is because Jan is 0
    mm = mm.substr(mm.length - 2);                  // take last 2 chars

    // day
    let dd = ('0' + currentDate.getDate());         // prepend 0
    dd = dd.substr(dd.length - 2);                  // take last 2 chars

    return yyyy + "" + mm + "" + dd;
}

var currentDateYYYYMMDD = getDateInYYYYMMDD();
console.log('currentDateYYYYMMDD: ' + currentDateYYYYMMDD);

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