496 Stimmen

Wie zeigt man JavaScript datetime in 12 Stunden AM/PM-Format?

Wie zeigt man ein JavaScript datetime-Objekt im 12-Stunden-Format (AM/PM) an?

33voto

Edwin Mendez Punkte 502

Soweit ich weiß, ist der beste Weg, dies ohne Erweiterungen und komplexe Codierung zu erreichen, folgender:

     date.toLocaleString([], { hour12: true});

Javascript AM/PM Format

<!DOCTYPE html>
<html>
<body>
    <p>Click the button to display the date and time as a string.</p>

    <button onclick="myFunction()">Try it</button>
    <button onclick="fullDateTime()">Try it2</button>
    <p id="demo"></p>
    <p id="demo2"></p>
    <script>
        function myFunction() {
            var d = new Date();
            var n = d.toLocaleString([], { hour: '2-digit', minute: '2-digit' });
            document.getElementById("demo").innerHTML = n;
        }
        function fullDateTime() {
            var d = new Date();          
            var n = d.toLocaleString([], { hour12: true});
            document.getElementById("demo2").innerHTML = n;
        }
    </script>
</body>
</html>

Ich habe das hier gefunden, als ich diese Frage überprüfte.

Wie kann ich .toLocaleTimeString() verwenden, ohne dass Sekunden angezeigt werden?

22voto

Ankur Mahajan Punkte 3104

Utilice Moment.js für diese

Verwenden Sie die folgenden Codes in JavaScript, wenn Sie moment.js verwenden

H, HH       24 hour time
h, or hh    12 hour time (use in conjunction with a or A)

En format() Methode gibt das Datum in einem bestimmten Format zurück.

moment(new Date()).format("YYYY-MM-DD HH:mm"); // 24H clock
moment(new Date()).format("YYYY-MM-DD hh:mm A"); // 12H clock (AM/PM)
moment(new Date()).format("YYYY-MM-DD hh:mm a"); // 12H clock (am/pm)

19voto

Vijay Maheriya Punkte 1537

Ich schlage vor, moment js für Datum und Uhrzeit zu verwenden.

https://momentjs.com/docs/#/displaying/format/

console.log(moment().format('hh:mm a'));

<script src="//cdnjs.cloudflare.com/ajax/libs/moment.js/2.17.1/moment.min.js"></script>

18voto

OnlyZero Punkte 381

Aktualisiert für mehr Kompression

const formatAMPM = (date) => {
  let hours = date.getHours();
  let minutes = date.getMinutes();    
  const ampm = hours >= 12 ? 'pm' : 'am';

  hours %= 12;
  hours = hours || 12;    
  minutes = minutes < 10 ? `0${minutes}` : minutes;

  const strTime = `${hours}:${minutes} ${ampm}`;

  return strTime;
};

console.log(formatAMPM(new Date()));

14voto

LiranBo Punkte 1774

Verwenden. dateObj.toLocaleString([locales[, options]])

Option 1 - Verwendung von Gebietsschemata

var date = new Date();
console.log(date.toLocaleString('en-US'));

Option 2 - Verwendung von Optionen

var options = { hour12: true };
console.log(date.toLocaleString('en-GB', options));

Nota: wird in allen Browsern außer Safari unterstützt

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