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

0voto

talsibony Punkte 7888

Dieser Beitrag hat mir geholfen, diese Hilfe zu schreiben, also teile ich sie, falls jemand nach dieser Lösung sucht, es unterstützt alle Variationen von yyyy, mm, dd

Date.prototype.formattedDate = function (pattern) {
    formattedDate = pattern.replace('yyyy', this.getFullYear().toString());
    var mm = (this.getMonth() + 1).toString(); // getMonth() is zero-based
    mm = mm.length > 1 ? mm : '0' + mm;
    formattedDate = formattedDate.replace('mm', mm);
    var dd = this.getDate().toString();
    dd = dd.length > 1 ? dd : '0' + dd;
    formattedDate = formattedDate.replace('dd', dd);
    return formattedDate;
};

d = new Date();
pattern = 'yyyymmdd';  // 20150813
d.formattedDate(pattern);

pattern = 'yyyy-mm-dd';
d.formattedDate(pattern); // 2015-08-13

0voto

Matias Osmerini Punkte 41

Ich hoffe, diese Funktion wird nützlich sein

function formatDate(dDate,sMode){       
        var today = dDate;
        var dd = today.getDate();
        var mm = today.getMonth()+1; //January is 0!
        var yyyy = today.getFullYear();
        if(dd<10) {
            dd = '0'+dd
        } 
        if(mm<10) {
            mm = '0'+mm
        } 
        if (sMode+""==""){
            sMode = "dd/mm/yyyy";
        }
        if (sMode == "yyyy-mm-dd"){
            return  yyyy + "-" + mm + "-" + dd + "";
        }
        if (sMode == "dd/mm/yyyy"){
            return  dd + "/" + mm + "/" + yyyy;
        }

    }

0voto

fiorentinoing Punkte 850

Die @o-o-Lösung funktioniert in meinem Fall nicht. Meine Lösung ist die folgende:

Date.prototype.yyyymmdd = function() {
  var mm = this.getMonth() + 1; // getMonth() is zero-based
  var dd = this.getDate();
  var ret = [this.getFullYear(), (mm<10)?'0':'', mm, (dd<10)?'0':'', dd].join('');

  return ret; // padding
};

0voto

Tan Wang Punkte 691

Date.js hat eine Menge hilfreicher Methoden zur Datumsanalyse.

require("datejs")

(new Date()).toString("yyyyMMdd")

0voto

sean1093 Punkte 99

Ich versuche, eine einfache Bibliothek für die Manipulation von JavaScript Datum Objekt zu schreiben. Sie können dies versuchen.

var dateString = timeSolver.getString(date, "YYYYMMDD")

Bibliothek hier: https://github.com/sean1093/timeSolver

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