1039 Stimmen

Monatsname aus Datum abrufen

Wie kann ich den Namen des Monats (z.B.: Oct/October) aus diesem Datumsobjekt in JavaScript generieren?

var objDate = new Date("10/11/2009");

8 Stimmen

Es wäre schön, wenn stackoverflow.com/a/18648314/5846045 könnte akzeptiert werden, um künftigen Lesern eine bessere Antwort zu geben

66voto

nickf Punkte 517253

Wenn es Ihnen nichts ausmacht, den Date-Prototyp zu erweitern (und es gibt einige gute Gründe, dies nicht zu tun), können Sie tatsächlich eine sehr einfache Methode entwickeln:

Date.prototype.monthNames = [
    "January", "February", "March",
    "April", "May", "June",
    "July", "August", "September",
    "October", "November", "December"
];

Date.prototype.getMonthName = function() {
    return this.monthNames[this.getMonth()];
};
Date.prototype.getShortMonthName = function () {
    return this.getMonthName().substr(0, 3);
};

// usage:
var d = new Date();
alert(d.getMonthName());      // "October"
alert(d.getShortMonthName()); // "Oct"

Diese Funktionen werden dann angewendet auf alle javascript Date-Objekte.

49voto

Mitanshu Punkte 437

Wenn Sie es eilig haben ... hier ist es!

const date = new Date(Date.now());
date.toLocaleString('en-US', {month: 'short'}); // {month:'long'}

Erwartetes Ergebnis: "Apr"

37voto

Andres Paul Punkte 813

Sie könnten einfach Date.toLocaleDateString() verwenden und das gewünschte Datum als Parameter auswerten

const event = new Date(Date.UTC(2012, 11, 20, 3, 0, 0));

const options = {  year: 'numeric', month: 'short', day: 'numeric' };

console.log(event.toLocaleDateString('de-DE', options));
// expected output: Donnerstag, 20. Dezember 2012

console.log(event.toLocaleDateString('en-US', options));
// US format 

// In case you only want the month
console.log(event.toLocaleDateString(undefined, { month: 'short'}));
console.log(event.toLocaleDateString(undefined, { month: 'long'}));

Weitere Informationen finden Sie in der Firefox Dokumentation

25voto

Beena Shetty Punkte 3576
Date.prototype.getMonthName = function() {
    var monthNames = [ "January", "February", "March", "April", "May", "June", 
                       "July", "August", "September", "October", "November", "December" ];
    return monthNames[this.getMonth()];
}

Es kann verwendet werden als

var month_Name = new Date().getMonthName();

24voto

AzizStark Punkte 858
document.write(new Date().toLocaleString('en-us',{month:'long', year:'numeric', day:'numeric'}))

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