JavaScript'te tarih ve saat nasıl alınır?
JavaScript'te tarih ve saati 31/12/2010 03:55 AM formatında nasıl alabilirim?
Cevap #1
Anlamsal olarak, muhtemelen tek satırlık olanı arıyorsunuz
new Date().toLocaleString()
tarihi kullanıcının yerel ayarına göre biçimlendirir.
Gerçekten tarihleri belirli bir şekilde biçimlendirmek istiyorsanız, moment.js kütüphanesini tavsiye ederim.
Cevap #2
Eğer format "sabit" ise yani farklı bir format kullanmanız gerekmiyorsa, tarihi formatlamak için tüm kütüphaneyi kullanmak yerine saf JavaScript kullanabilirsiniz:
//Pad given value to the left with "0"
function AddZero(num) {
return (num >= 0 && num < 10) ? "0" + num : num + "";
}
window.onload = function() {
var now = new Date();
var strDateTime = [[AddZero(now.getDate()),
AddZero(now.getMonth() + 1),
now.getFullYear()].join("/"),
[AddZero(now.getHours()),
AddZero(now.getMinutes())].join(":"),
now.getHours() >= 12 ? "PM" : "AM"].join(" ");
document.getElementById("Console").innerHTML = "Now: " + strDateTime;
};<div id="Console"></div>Değişken strDateTime istediğiniz formatta tarih/saat bilgisini tutacaktır ve gerekirse bunu oldukça kolay bir şekilde ayarlayabilmelisiniz.
Ben sadece iyi bir uygulama olarak join kullanıyorum, fazlası değil, stringleri birleştirmekten daha iyi.
Cevap #3
var now = new Date();
now.format("dd/MM/yyyy hh:mm TT");
Tüm detayları burada alın: Flagrant Badassery » JavaScript Tarih Formatı
Cevap #4
Bu sorunun neredeyse on yıl önce sorulduğunu ve birkaç kez yanıtlandığını fark ediyorum, ama aynı soruyla burada hâlâ karşılaştığım için, paylaşmaya değer bulduğum bazı cesaret verici çözümler buldum:
var jsonDate = (new Date()).toJSON(); // "2021-08-16T16:31:53.596Z"
var localeDateTime = (new Date()).toLocaleString(); // "8/16/2021, 11:40:57 AM"
var localeDate = (new Date()).toLocaleDateString(); // "8/16/2021"
var localeTime = (new Date()).toLocaleTimeString(); // "11:37:13 AM"
console.log(jsonDate);
console.log(localeDateTime);
console.log(localeDate);
console.log(localeTime);Referans
Cevap #5
Date().toLocaleString() şunu döndürür: 31.07.2018, 12:58:03
Oldukça yakın - sadece virgülü ve saniyeleri atın:
new Date().toLocaleString().replace(",","").replace(/:.. /," ");Sonuçlar: 31.07.2018 12:58 ÖS
Cevap #6
bunu dene:
var today = new Date();
var date = today.getFullYear()+'-'+(today.getMonth()+1)+'-'+today.getDate();
var time = today.getHours()+':'+today.getMinutes()+':'+today.getSeconds();
console.log(date + ' '+ time);