it-swarm.com.de

Wie erhalte ich das aktuelle Datum in JavaScript?

Wie bekomme ich ein aktuelles Datum in JavaScript?

1875
Suresh

Verwenden Sie new Date(), um ein neues Date-Objekt mit dem aktuellen Datum und der aktuellen Uhrzeit zu generieren.

var today = new Date();
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;
}

today = mm + '/' + dd + '/' + yyyy;
document.write(today);

Dadurch erhalten Sie das heutige Datum im Format mm/tt/jjjj.

Ändern Sie einfach today = mm +'/'+ dd +'/'+ yyyy; in das gewünschte Format.

2253
Samuel Meddows

var utc = new Date().toJSON().slice(0,10).replace(/-/g,'/');
document.write(utc);

Verwenden Sie die Option replace, wenn Sie die Variable utc wie new Date(utc) wiederverwenden möchten, da Firefox und Safari kein Datum mit Bindestrichen erkennen.

374
Varun Natraaj

AKTUALISIERT! , Bildlauf nach unten

Wenn Sie dem Endbenutzer etwas Einfaches bieten möchten ... Also, fixed a small suffix issue in the first version below. Now properly returns suffix.

_var objToday = new Date(),
        weekday = new Array('Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'),
        dayOfWeek = weekday[objToday.getDay()],
        domEnder = function() { var a = objToday; if (/1/.test(parseInt((a + "").charAt(0)))) return "th"; a = parseInt((a + "").charAt(1)); return 1 == a ? "st" : 2 == a ? "nd" : 3 == a ? "rd" : "th" }(),
        dayOfMonth = today + ( objToday.getDate() < 10) ? '0' + objToday.getDate() + domEnder : objToday.getDate() + domEnder,
        months = new Array('January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'),
        curMonth = months[objToday.getMonth()],
        curYear = objToday.getFullYear(),
        curHour = objToday.getHours() > 12 ? objToday.getHours() - 12 : (objToday.getHours() < 10 ? "0" + objToday.getHours() : objToday.getHours()),
        curMinute = objToday.getMinutes() < 10 ? "0" + objToday.getMinutes() : objToday.getMinutes(),
        curSeconds = objToday.getSeconds() < 10 ? "0" + objToday.getSeconds() : objToday.getSeconds(),
        curMeridiem = objToday.getHours() > 12 ? "PM" : "AM";
var today = curHour + ":" + curMinute + "." + curSeconds + curMeridiem + " " + dayOfWeek + " " + dayOfMonth + " of " + curMonth + ", " + curYear;

document.getElementsByTagName('h1')[0].textContent = today;_
_<h1></h1>_

UBBER UPDATE Nach langem Zögern habe ich endlich GitHubbed und dies mit der endgültigen Lösung I aktualisiert habe für mich verwendet. Es wurden sogar einige Änderungen in letzter Minute vorgenommen, um es noch süßer zu machen! Wenn Sie nach dem alten jsFiddle suchen, sehen Sie bitte dies .

Dieses Update kommt herein 2 Aromen, immer noch relativ klein, wenn auch nicht so klein wie oben, originelle Antwort. Wenn du extrem klein sein willst, geh damit.
Auch Hinweis: Dies ist immer noch weniger aufgebläht als moment.js. Moment.js ist zwar nett, aber es gibt zu viele weltliche Methoden, die einen Moment des Lernens erfordern, als ob es eine Sprache wäre. Meins hier verwendet das gleiche gemeinsame Format wie PHP: Datum .

Schnellzugriff

Flavor 1 new Date().format(String) My Personal Fav. Ich kenne das Tabu, aber das Date-Objekt funktioniert hervorragend. Beachten Sie einfach alle anderen Mods, die Sie möglicherweise für das Datumsobjekt haben.

_//  use as simple as
new Date().format('m-d-Y h:i:s');   //  07-06-2016 06:38:34
_

Flavor 2 dateFormat(Date, String) Traditionellere All-in-One-Methode. Hat alle Fähigkeiten des Vorgängers, wird aber über die Methode mit Date param aufgerufen.

_//  use as simple as
dateFormat(new Date(), 'm-d-Y h:i:s');  //  07-06-2016 06:38:34
_

BONUS Flavor (erfordert jQuery) $.date(Date, String) Dies enthält viel mehr als nur eine einfache format -Option. Es erweitert das Basisobjekt Date und enthält Methoden wie addDays. Weitere Informationen finden Sie im Git .

In diesem Mod sind die Formatzeichen von PHP: date inspiriert. Eine vollständige Liste finden Sie in meinem README

Dieser Mod hat auch eine viel längere Liste von vorgefertigten Formaten. Um ein vorgefertigtes Format zu verwenden, geben Sie einfach den Schlüsselnamen ein. dateFormat(new Date(), 'pretty-a');

  • 'Verbindung'
    • 'commonLogFormat' == 'd/m/y: g: i: s'
    • 'exif' == 'Y: m: d G: i: s'
    • 'isoYearWeek' == 'Y \\ WW'
    • 'isoYearWeek2' == 'Y - \\ WW'
    • 'isoYearWeekDay' == 'Y \\ WWj'
    • 'isoYearWeekDay2' == 'Y - \\ WW-j'
    • 'mySQL' == 'Y-m-d h: i: s'
    • 'postgreSQL' == 'Y.z'
    • 'postgreSQL2' == 'Yz'
    • 'soap' == 'Y-m-d \\ TH: i: s.u'
    • 'soap2' == 'Y-m-d \\ TH: i: s.uP'
    • 'unixTimestamp' == '@U'
    • 'xmlrpc' == 'Ymd \\ TG: i: s'
    • 'xmlrpcCompact' == 'Ymd \\ tGis'
    • 'wddx' == 'Y-n-j \\ TG: i: s'
  • 'Konstanten'
    • 'AMERICAN' == 'F j Y'
    • 'AMERICANSHORT' == 'm/d/y'
    • 'AMERICANSHORTWTIME' == 'm/d/y h: i: sA'
    • 'ATOM' == 'Y-m-d \\ TH: i: sP'
    • 'COOKIE' == 'l d-M-Y H: i: s T'
    • 'EUROPEAN' == 'j F Y'
    • 'EUROPEANSHORT' == 'd.m.Y'
    • 'EUROPEANSHORTWTIME' == 'd.m.Y H: i: s'
    • 'ISO8601' == 'Y-m-d \\ TH: i: sO'
    • 'LEGAL' == 'j F Y'
    • 'RFC822' == 'D d M y H: i: s O'
    • 'RFC850' == 'l d-M-y H: i: s T'
    • 'RFC1036' == 'D d M y H: i: s O'
    • 'RFC1123' == 'D d M Y H: i: s O'
    • 'RFC2822' == 'D d M Y H: i: s O'
    • 'RFC3339' == 'Y-m-d \\ TH: i: sP'
    • 'RSS' == 'D d M Y H: i: s O'
    • 'W3C' == 'Y-m-d \\ TH: i: sP'
  • 'ziemlich'
    • 'pretty-a' == 'g: i.sA l jS \\ o \\ f F Y'
    • 'pretty-b' == 'g: iA l jS \\ o \\ f F Y'
    • 'pretty-c' == 'n/t/j g: iA'
    • 'pretty-d' == 'n/d/y'
    • 'pretty-e' == 'F jS - g: ia'
    • 'pretty-f' == 'g: iA'

Wie Sie vielleicht bemerken, können Sie double _\_ verwenden, um ein Zeichen zu entkommen.


217
SpYk3HH

Wenn Sie nur ein Datum ohne Zeitangaben wünschen, verwenden Sie:

var today = new Date();
    today.setHours(0, 0, 0, 0);

document.write(today);

131
Marshal

Der kürzeste möglich. 

So erhalten Sie ein Format wie "2018-08-03":

let today = new Date().toISOString().slice(0, 10)

console.log(today)

So erhalten Sie ein Format wie "8/3/2018":

let today = new Date().toLocaleDateString()

console.log(today)

Sie können auch locale als Argument übergeben, beispielsweise toLocaleDateString("sr") usw.

115
Damjan Pavlica

Versuche dies:

var currentDate = new Date()
var day = currentDate.getDate()
var month = currentDate.getMonth() + 1
var year = currentDate.getFullYear()
document.write("<b>" + day + "/" + month + "/" + year + "</b>")

Das Ergebnis wird wie sein

15/2/2012
93
Jimmy M

Wenn Sie eine detailliertere Kontrolle über die Datumsformate suchen, empfehle ich Ihnen, momentjs auszuprobieren. Tolle Bibliothek - und nur 5KB . http://momentjs.com/

62
benjamin.keen

Sie können moment.js verwenden: http://momentjs.com/

var m = moment().format("DD/MM/YYYY");

document.write(m);
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.14.1/moment.min.js"></script>

51
Morad

var d = (new Date()).toString().split(' ').splice(1,3).join(' ');

document.write(d)

Um es in Schritte zu zerlegen:

  1. (new Date()).toString() gibt "Fri Jun 28 2013 15:30:18 GMT-0700 (PDT)"

  2. (new Date()).toString().split(' ') teilt die obige Zeichenfolge in jedes Leerzeichen ein und gibt ein Array wie folgt zurück: ["Fri", "Jun", "28", "2013", "15:31:14", "GMT-0700", "(PDT) "]

  3. (new Date()).toString().split(' ').splice(1,3).join(' ') übernimmt den zweiten, dritten und vierten Wert aus dem obigen Array, fügt sie mit Leerzeichen zusammen und gibt eine Zeichenfolge "28. Juni 2013" zurück.

45
Rishabh Marya
var date = new Date().toLocaleDateString("en-US");

Sie können auch die Methode toLocaleDateString mit zwei Parametern aufrufen:

var date = new Date().toLocaleDateString("en-US", {
    "year": "numeric",
    "month": "numeric"
});

Artikel zu MSDN . Mehr zu dieser Methode unter MDN .

39
Dunaevsky Maxim

Das funktioniert jedes Mal:

    var now = new Date();
    var day = ("0" + now.getDate()).slice(-2);
    var month = ("0" + (now.getMonth() + 1)).slice(-2);
    var today = now.getFullYear() + "-" + (month) + "-" + (day);
    
    document.write(today);

36
roshan

Sauberere, einfachere Version:

new Date().toLocaleString();

Ergebnis variiert je nach Benutzer Gebietsschema :

27.02.2017, 09:15:41 Uhr

29
Oded Breiner

Wenn Sie mit dem Format JJJJ-MM-TT zufrieden sind, erledigt dies auch die Aufgabe.

new Date().toISOString().split('T')[0]

2018-03-10

24
Aung Htet

Sie können Date.js library verwenden, das das Date-Objekt erweitert, also die .today () -Methode haben.

21
eomeroff

Sie können das aktuelle Datum jetzt wie folgt aufrufen:

var now = Date.now()

referenz:

https://developer.mozilla.org/de/docs/Web/JavaScript/Reference/Global_Objects/Date/now

18
Jose Rojas

Varuns Antwort berücksichtigt nicht TimezoneOffset . Hier ist eine Version, die dies tut:

var d = new Date()
new Date(d.getTime() - d.getTimezoneOffset() * 60000).toJSON().slice(0, 10) // 2015-08-11

Die Variable TimezoneOffset ist Minuten, während der Date-Konstruktor Millisekunden benötigt, also die Multiplikation mit 60000.

15
user1338062

Die kürzeste Antwort lautet: new Date().toJSON().slice(0,10)

13
Blair Anderson

Da toISOString() nur die aktuelle UTC-Zeit zurückgibt, nicht die Ortszeit. Wir müssen ein Datum erstellen, indem wir die Funktion '.toString ()' verwenden, um ein Datum im Format yyyy-MM-dd Zu erhalten

document.write(new Date(new Date().toString().split('GMT')[0]+' UTC').toISOString().split('T')[0]);

m Datum und Uhrzeit in das Format yyyy-MM-ddTHH:mm:ss Zu bringen

document.write(new Date(new Date().toString().split('GMT')[0]+' UTC').toISOString().split('.')[0]);

m Datum und Uhrzeit in das Format yyyy-MM-dd HH:mm:ss Zu bringen

document.write(new Date(new Date().toString().split('GMT')[0]+' UTC').toISOString().split('.')[0].replace('T',' '));
12
jafarbtech

Wenn Sie ein einfaches DD/MM/YYYY-Format wünschen, bin ich auf diese einfache Lösung gekommen, obwohl fehlende Nullen nicht vorangestellt werden.

var d = new Date();
document.write( [d.getDate(), d.getMonth()+1, d.getFullYear()].join('/') );

11
Phil Ricketts
new Date().toDateString();

Ergebnis:

"Mi 03 Feb 2016"

10
user3519897
new Date().toISOString().slice(0,10); 

würde auch funktionieren

8
Toucouleur

LATEST EDIT: 8/23/19 Die Bibliothek date-fns funktioniert ähnlich wie moment.js = hat aber einen viel kleineren Platzbedarf. Damit können Sie auswählen, welche Funktionen in Ihr Projekt aufgenommen werden sollen, damit Sie nicht die gesamte Bibliothek kompilieren müssen, um das heutige Datum zu formatieren. Wenn eine minimale Drittanbieter-Bibliothek keine Option für Ihr Projekt ist, unterstütze ich die akzeptierte Lösung von Samuel Meddows nach oben.

Die Geschichte unten bewahren, weil es ein paar Menschen geholfen hat. Aber für die Aufzeichnung ist es ziemlich hacky und kann ohne Vorwarnung brechen, wie die meisten Lösungen in diesem Beitrag

EDIT 2/7/2017 Eine einzeilige JS-Lösung:

tl; dr

var todaysDate = new Date(Date.now()).toLocaleString().slice(0,3).match(/[0-9]/i) ? new Date(Date.now()).toLocaleString().split(' ')[0].split(',')[0] : new Date(Date.now()).toLocaleString().split(' ')[1] + " " + new Date(Date.now()).toLocaleString().split(' ')[2] + " " + new Date(Date.now()).toLocaleString().split(' ')[3];

Edge, ff latest, & chrome return todaysDate = "2/7/2017"
"funktioniert" * in IE10 +

Erklärung

Ich fand heraus, dass IE10 und IE Edge die Dinge ein bisschen anders machen .. go figure. Mit new Date(Date.now()).toLocaleString() als Eingabe,

IE10 gibt zurück:

"Tuesday, February 07, 2017 2:58:25 PM"

Ich könnte eine große lange Funktion und FTFY schreiben. Aber Sie sollten wirklich moment.js für dieses Zeug verwenden. Mein Skript räumt dies lediglich auf und gibt Ihnen das expanded traditionelle US-Notation: > todaysDate = "March 06, 2017"

IE Edge gibt Folgendes zurück:

"‎2‎/‎7‎/‎2017‎ ‎2‎:‎59‎:‎27‎ ‎PM"

Natürlich könnte es nicht so einfach sein. Die Datumszeichenfolge von Edge enthält unsichtbare "•" Zeichen zwischen den einzelnen sichtbaren Zeichen. Es wird also nicht nur geprüft, ob das erste Zeichen eine Zahl ist, sondern auch das Die ersten drei Zeichen, da sich herausstellt, dass jedes einzelne Zeichen im gesamten Datumsbereich irgendwann ein Punkt oder ein Schrägstrich sein wird. Um die Dinge einfach zu halten, einfach . Slice () die ersten drei Zeichen (winziger Puffer gegen zukünftige Spielereien) und dann nach Zahlen suchen. Es ist wahrscheinlich zu beachten, dass diese unsichtbaren Punkte möglicherweise in Ihrem Code bestehen bleiben. Ich würde mich vielleicht damit befassen, wenn Sie größere Pläne haben, als nur diese Zeichenfolge in Ihrer Ansicht zu drucken.

∴ aktualisierter Einzeiler:

var todaysDate = new Date(Date.now()).toLocaleString().slice(0,3).match(/[0-9]/i) ? new Date(Date.now()).toLocaleString().split(' ')[0].split(',')[0] : new Date(Date.now()).toLocaleString().split(' ')[1] + " " + new Date(Date.now()).toLocaleString().split(' ')[2] + " " + new Date(Date.now()).toLocaleString().split(' ')[3];

Das ist scheiße zu lesen. Wie wäre es mit:

var dateString = new Date(Date.now()).toLocaleString();
var todaysDate = dateString.slice(0,3).match(/[0-9]/i) ? dateString.split(' ')[0].split(',')[0] : dateString.split(' ')[1] + " " + dateString.split(' ')[2] + " " + dateString.split(' ')[3];

ORIGINAL ANTWORT

Ich habe einen Einzeiler für dich:

new Date(Date.now()).toLocaleString().split(', ')[0];

und [1] zeigt die Tageszeit an.

6
Cameron Donahue

Sie können dies verwenden

<script>
function my_curr_date() {      
    var currentDate = new Date()
    var day = currentDate.getDate();
    var month = currentDate.getMonth() + 1;
    var year = currentDate.getFullYear();
    var my_date = month+"-"+day+"-"+year;
    document.getElementById("dateField").value=my_date;    
}
</script>

Das HTML ist

<body onload='return my_curr_date();'>
    <input type='text' name='dateField' id='dateField' value='' />
</body>
6
Roger

Wenn Sie jQuery verwenden. Versuchen Sie diesen einen Liner:

$.datepicker.formatDate('dd/mm/yy', new Date());

Hier ist die Konvention zum Formatieren des Datums 

  • d - Tag des Monats (keine führende Null)
  • dd - Tag des Monats (zweistellig)
  • o - Tag des Jahres (keine führenden Nullen)
  • oo - Tag des Jahres (dreistellig)
  • D - Tagesname kurz
  • DD - Tagesname lang
  • m - Monat des Jahres (keine führende Null)
  • mm - Monat des Jahres (zweistellig)
  • M - Monatsname kurz
  • MM - Monatsname lang
  • y - Jahr (zweistellig)
  • jJ - Jahr (vierstellig)

Hier ist die Referenz für jQuery datepicker

6
Souvik

Sie können dies überprüfen

var today = new Date();
today = parseInt(today.getMonth()+1)+'/'+today.getDate()+'/'+today.getFullYear()+"\nTime : "+today.getHours()+":"+today.getMinutes()+":"+today.getSeconds();
document.write(today);

Und siehe Dokumentation für Date () - Konstruktor . link

4
Akhil

Was ist die große Sache damit. Der sauberste Weg, dies zu tun, ist

var currentDate=new Date().toLocaleString().slice(0,10);

4
ISONecroMAn
var dateTimeToday = new Date();
var dateToday = new Date(
    dateTimeToday.getFullYear(), 
    (dateTimeToday.getMonth() + 1) /*Jan = 0! */, 
    dateTimeToday.getDate(), 
    0, 
    0, 
    0, 
    0);
3
Jas

Das kann dir helfen

var date = new Date();
console.log(date.getDate()+'/'+(date.getMonth()+1)+'/'+date.getFullYear());

Das aktuelle Datum wird im Format TT/MM/JJJJ gedruckt

3
Jayant Patil

Ich weiß nicht, ob es jemandem helfen wird, aber ich benutze es, um heute das Date-Objekt zu erhalten.

new Date( 3600000*Math.floor(Date.now()/3600000) )
3
marverix

Ich denke, das ist eine alte Frage, aber der einfachste Weg wäre der folgende:

var date = new Date();
var TimeStamp = date.toLocaleString();

function CurrentTime(){
  alert(TimeStamp);
}

Dadurch wird die aktuelle Uhrzeit erfasst, an einen String basierend auf dem Ort übergeben und dann können Sie die Funktion CurrentTime aufrufen, um die Uhrzeit anzuzeigen. Dies wäre für mich der effektivste Weg, um einen Zeitstempel für etwas zu bekommen.

3
Brock Davis

2,39 KB minifiziert. Eine Datei https://github.com/rhroyston/clock-js

Ich versuche nur zu helfen...

 enter image description here

2
Ron Royston

Wenn Sie eine detailliertere Kontrolle über die Datumsformate suchen, empfehle ich Ihnen, Date-FNS auszuprobieren. Tolle Bibliothek - viel kleiner als moment.js und sein funktionsbasierter Ansatz machen ihn viel schneller als andere Klassen-basierte Bibliotheken. Stellen Sie eine große Anzahl von Vorgängen bereit, die über Datumsangaben erforderlich sind. 

https://date-fns.org/docs/Getting-Started

2
jyotibisht

Hübsches Druck das Datum wie dieses.

1. Juni 2015 11:36:48 Uhr

https://Gist.github.com/Gerst20051/7d72693f722bbb0f6b58

2
Andy

Dies ist gut, um ein formatiertes Datum zu erhalten

let date = new Date().toLocaleDateString("en", {year:"numeric", day:"2-digit", month:"2-digit"});
console.log(date);
1

Ich dachte, ich würde das einfügen, was ich für ein echtes Date verwende:

function realDate(date){
    return date.getDate() + "/" + (date.getMonth()+1) + "/" + date.getUTCFullYear();
}

var ourdate = realDate(new Date);
1
Waheed

Das macht viel;

var today = new Date();
var date = today.getFullYear()+'/'+(today.getMonth()+1)+'/'+today.getDate();
1
anil shrestha
(function() { var d = new Date(); return new Date(d - d % 86400000); })()
1
Andrea

Versuchen Sie dies ... __ HTML

<p id="date"></p>

JS

<script>
var currentDate = new Date()
var day = currentDate.getDate()
var month = currentDate.getMonth() + 1
var year = currentDate.getFullYear()
document.getElementById("date").innerHTML =("<b>" + day + "/" + month + "/" + year + "</b>")
</script>

Arbeitsdemo für aktuelles Datum

Demo

1
Shanu Shaji

Dies ist mein aktueller Favorit, weil es sowohl flexibel als auch modular ist. Es ist eine Sammlung von (mindestens) drei einfachen Funktionen:

/**
 * Returns an array with date / time information
 * Starts with year at index 0 up to index 6 for milliseconds
 * 
 * @param {Date} date   date object. If falsy, will take current time.
 * @returns {[]}
 */
getDateArray = function(date) {
    date = date || new Date();
    return [
        date.getFullYear(),
        exports.pad(date.getMonth()+1, 2),
        exports.pad(date.getDate(), 2),
        exports.pad(date.getHours(), 2),
        exports.pad(date.getMinutes(), 2),
        exports.pad(date.getSeconds(), 2),
        exports.pad(date.getMilliseconds(), 2)
    ];
};

Hier ist die Pad-Funktion:

 /**
 * Pad a number with n digits
 *
 * @param {number} number   number to pad
 * @param {number} digits   number of total digits
 * @returns {string}
 */
exports.pad = function pad(number, digits) {
    return new Array(Math.max(digits - String(number).length + 1, 0)).join(0) + number;
};

Schließlich kann ich meine Datumszeichenfolge entweder von Hand erstellen oder eine einfache Funktion verwenden, um es für mich auszuführen:

/**
 * Returns nicely formatted date-time
 * @example 2015-02-10 16:01:12
 *
 * @param {object} date
 * @returns {string}
 */
exports.niceDate = function(date) {
    var d = exports.getDateArray(date);
    return d[0] + '-' + d[1] + '-' + d[2] + ' ' + d[3] + ':' + d[4] + ':' + d[5];
};

/**
 * Returns a formatted date-time, optimized for machines
 * @example 2015-02-10_16-00-08
 *
 * @param {object} date
 * @returns {string}
 */
exports.roboDate = function(date) {
    var d = exports.getDateArray(date);
    return d[0] + '-' + d[1] + '-' + d[2] + '_' + d[3] + '-' + d[4] + '-' + d[5];
};
1
Fannon

Das kann dir helfen

let d = new Date();                      

this.dateField = element(by.xpath('xpath here'));
this.datetField.sendKeys((d.getMonth() + 1) + '/' + d.getDate() + '/' + d.getFullYear());
1
RRR

Diese Antwort ist für Leute gedacht, die nach einem Datum mit ISO-8601-Format und mit der Zeitzone ..__ suchen. Es ist eine reine JS für diejenigen, die keine Datumsbibliothek verwenden möchten.

      var date = new Date();
      var timeZone = date.toString();
      //Get timezone ( 'GMT+0200' )
      var timeZoneIndex = timeZone.indexOf('GMT');
      //Cut optional string after timezone ( '(heure de Paris)' )
      var optionalTimeZoneIndex = timeZone.indexOf('(');
      if(optionalTimeZoneIndex != -1){
          timeZone = timeZone.substring(timeZoneIndex, optionalTimeZoneIndex);
      }
      else{
          timeZone = timeZone.substring(timeZoneIndex);
      }
      //Get date with JSON format ( '2019-01-23T16:28:27.000Z' )
      var formattedDate = new Date(date.getTime() - (date.getTimezoneOffset() * 60000)).toJSON();
      //Cut ms
      formattedDate = formattedDate.substring(0,formattedDate.indexOf('.'));
      //Add timezone
      formattedDate = formattedDate + ' ' + timeZone;
      console.log(formattedDate);

Drucken Sie so etwas in der Konsole aus:

2019-01-23T17: 12: 52 GMT + 0100 

JSFiddle: https://jsfiddle.net/n9mszhjc/4/

0
alain.janinm

Sie können das aktuelle Browserdatum in JavaScript mithilfe von new Date() aufrufen. 

Derzeit haben wir jedoch ein gutes Plugin für Analysieren, Überprüfen, Bearbeiten und Anzeigen von Datumsangaben und Uhrzeiten in JavaScript mithilfe von moment.js

0

Sie können meine unten angegebene DATE-API für die tägliche Verwendung der Datumsformatierung verwenden, zusammen mit dem aktuellen Datum, dem Datum von gestern usw. Verwendung von z.B. 

 var dt = new Date();  
       /// ANY DATE YOU WANT --  dt = new Date(""July 21, 1983 01:15:00"")

       dateObj = dt.getFormattedDate();

       alert( dateObj.isToday() );
       alert( dateObj.todayDay() );
       alert( dateObj.monthNameDayYear() );

(function () {

    fnDateProcessor = function () {
        var that = this;

        return {

            yyyymmdd: function (separator) {
                var fdate = this.formatDate(true, true) ,
                    separator = separator ? separator : "-";
                return fdate.year + separator + fdate.month + separator + fdate.day;
            },

            monthNameDayYear: function () {
                var fdate = this.formatDate(true, true);
                return fdate.monthName + " " + fdate.day + ", " + fdate.year;
            },

            ddmmyyyy: function (separator) {
                var fdate = this.formatDate(true, true) ,
                    separator = separator ? separator : "/";
                return fdate.day + separator + fdate.month + separator + fdate.year;
            },

            meridianTime: function () {
                var fdate = this.formatDate();
                return fdate.hour + ":" + fdate.minute + " " + fdate.meridian;
            },

            monthDay: function (separator) {

                var fdate = this.formatDate();
                separator = checkSeparator(separator);
                return fdate.monthName.substring(0, 3) + separator + fdate.day;

            },

            weekMonthDayYear: function () {
                var fdate = this.formatDate();
                //separator = checkSeparator(separator);

                return fdate.weekDay + " " + fdate.monthName.substring(0, 3) +
                    fdate.day + " ," + fdate.year;
            },

            timeZoneInclusive: function () {

                return new Date(that);
            },

            todayDay: function () { return new Date().getDate(); },
            todayMonth: function () { return new Date().getMonth() + 1; },
            dateDay: function () { return this.formatDate().day; },
            dateMonth: function () { return this.formatDate().month; },
            isToday: function () { return this.sameDate(new Date()); },
            isYesterday: function () {
                d = new Date(); d.setDate(d.getDate() - 1);
                return this.sameDate(d);
            },

            formatDate: function () {
                var zeroPaddedMnth = true, zeroPaddedDay = false,
                    zeroPaddedHr = false, zeroPaddedMin = true;
                // Possible to take Options arg that overide / merge to defaults

                var monthNames = [
                    "January", "February", "March",
                    "April", "May", "June", "July",
                    "August", "September", "October",
                    "November", "December"
                ];
                var weekDays = ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"];

                var day = getFormattedDay(that.getDate(), zeroPaddedDay);
                var monthIndex = that.getMonth();
                var month = getFormattedMonth(monthIndex + 1, zeroPaddedMnth);
                var year = that.getFullYear();
                var wkDay = that.getDay();
                var hour = getFormattedHour(that.getHours(), zeroPaddedHr);
                var minute = getFormattedMinute(that.getMinutes(), zeroPaddedMin);
                var meridian = getMeridian(that.getHours());

                return {
                    "day": day, "monthName": monthNames[monthIndex], "month": month,
                    "weekDay": weekDays[wkDay], "year": year, "hour": hour, "minute": minute,
                    "meridian": meridian
                };
            },

            compareDate: function (d2) {     /// validates if caller is less than argument                            
                d2 = _isString(d2) ? new Date(d2) : d2;

                return !this.sameDate(d2)
                    && typeof d2 != "number"
                    ? that < d2 : false;
            },

            sameDate: function (d) {
                return that.getFullYear() === d.getFullYear()
                    && that.getDate() === d.getDate()
                    && that.getMonth() === d.getMonth();
            },

            dateAfter: function (separator) {
                var fdate = this.formatDate();
                var separator = separator ? separator : "-";
                return fdate.year + separator + fdate.month + separator + (fdate.day + 1);
            }

        };

    };


    function _isString(obj) {
        var toString = Object.prototype.toString;
        return toString.call(obj) == '[object String]';
    }

    function checkSeparator(separator) {
        // NOT GENERIC ... NEEDS REVISION
        switch (separator) {
            case " ": sep = separator; break;
            case ",": sep = " ,"; break;
            default:
                sep = " "; break;
        }

        return sep;
    }

    function getFormattedHour(h, zeroPadded) {
        h = h % 12;
        h = h ? h : 12;    //  12 instead of 00
        return zeroPadded ? addZero(h) : h;
    }

    function getFormattedMinute(m, zeroPadded) {

        return zeroPadded ? addZero(m) : m;
    }

    function getFormattedDay(dd, zeroPadded) {

        return zeroPadded ? addZero(dd) : dd;
    }
    function getFormattedMonth(mm, zeroPadded) {

        return zeroPadded ? addZero(mm) : mm;
    }

    function getMeridian(hr) {

        return hr >= 12 ? 'PM' : 'AM';
    }

    function addZero(i) {
        if (i < 10) {
            i = "0" + i;
        }
        return i;
    }


    Date.prototype.getFormattedDate = fnDateProcessor;

} ());
0
Yergalem

Die Grundlagen

Wenn Sie mit dem Format Sun Jan 24 2016 21:23:07 GMT+0100 (CET) zufrieden sind, können Sie einfach diesen Code verwenden:

var today = new Date();

Date.prototype.toLocaleDateString ()

Wenn Sie Ihre Ausgabe formatieren möchten, sollten Sie Date.prototype.toLocaleDateString() verwenden:

var today = new Date().toLocaleDateString('de-DE', {     
    weekday: 'long', 
    year: 'numeric',
    month: 'long',
    day: 'numeric'
});

Wenn Sie diesen Code heute (24. Januar 2016) in einem modernen Browser ausgeführt haben, würde er die Zeichenfolge Sonntag, 24. Januar 2016 erzeugen. Bei älteren Browsern kann es jedoch zu einem anderen Ergebnis kommen, z. IE <11 unterstützt keine Gebietsschemas oder Optionsargumente.

Gewohnheit gehen

Wenn Date.prototype.toLocaleDateString() nicht flexibel genug ist, um Ihre Anforderungen zu erfüllen, können Sie ein benutzerdefiniertes Date-Objekt erstellen, das folgendermaßen aussieht:

var DateObject = (function() {
    var monthNames = [
      "January", "February", "March",
      "April", "May", "June", "July",
      "August", "September", "October",
      "November", "December"
    ];
    var date = function(str) {
        this.set(str);
    };
    date.prototype = {
        set : function(str) {
            var dateDef = str ? new Date(str) : new Date();
            this.day = dateDef.getDate();
            this.dayPadded = (this.day < 10) ? ("0" + this.day) : "" + this.day;
            this.month = dateDef.getMonth() + 1;
            this.monthPadded = (this.month < 10) ? ("0" + this.month) : "" + this.month;
            this.monthName = monthNames[this.month - 1];
            this.year = dateDef.getFullYear();
        }
    };
    return date;
})();

Wenn Sie diesen Code enthalten und new DateObject() heute (24. Januar 2016) ausgeführt haben, würde ein Objekt mit den folgenden Eigenschaften erzeugt:

day: 24
dayPadded: "24"
month: 1
monthPadded: "01"
monthName: "January"
year: 2016
0
John Slegers

Wenn Sie nach einem String suchen.

statusUpdate = "time " + new Date(Date.now()).toLocaleTimeString();

ausgabe "Zeit 11:30:53"

0
Harry Bosh

Mit der Möglichkeit, in benutzerdefiniertem Format und unter Verwendung des Monatsnamens in verschiedenen Ländereinstellungen zu rendern:

const locale = 'en-us';
const d = new Date(date);

const day = d.getDate();
const month = d.toLocaleString(locale, { month: 'long' });
const year = d.getFullYear();

const time = d.toLocaleString(locale, { hour12: false, hour: 'numeric', minute: 'numeric'});

return `${month} ${day}, ${year} @ ${time}`; // May 5, 2019 @ 23:41
0
Alex Ivasyuv