JavaScript, bir tarih nesnesinden ayın adını almak için birkaç verimli yol sunar. Bu makale, her biri benzersiz avantajlar ve dezavantajlar sunan üç yaygın yöntemi ele almaktadır.
İçerik Tablosu
toLocaleString
Fonksiyonunu KullanmaIntl.DateTimeFormat
Nesnesini Kullanma- Özel Bir Fonksiyon Oluşturma
toLocaleString
Fonksiyonunu Kullanma
toLocaleString()
metodu, tarihleri kullanıcının yerel ayarlarına göre biçimlendirmek için özlü bir yol sunar. Bu, ay adının tercih ettikleri dilde görüntülenmesini sağlar. Bununla birlikte, ay adını ayırmak için dikkatli bir şekilde ele alınması gerekir.
const date = new Date();
const monthName = date.toLocaleString('default', { month: 'long' });
console.log(monthName); // Çıktı: (örneğin, "Ekim", "Kasım", vb.)
// Yerel ayar belirtme:
const frenchMonthName = date.toLocaleString('fr-FR', { month: 'long' });
console.log(frenchMonthName); // Çıktı: (örneğin, "octobre", "novembre", vb.)
'default'
yerel ayarı, kullanıcının tarayıcı ayarlarını kullanır. 'fr-FR'
(Fransızca) veya 'es-ES'
(İspanyolca) gibi yerel ayarları belirleyebilirsiniz. month: 'long'
seçeneği tam ay adını ister; kısaltmalar için month: 'short'
kullanın.
Intl.DateTimeFormat
Nesnesini Kullanma
Intl.DateTimeFormat
nesnesi, toLocaleString()
‘den daha ayrıntılı tarih biçimlendirme denetimi sağlar ve karmaşık özelleştirmeler ve daha iyi yerel ayar işleme olanağı tanır.
const date = new Date();
const options = { month: 'long' };
const formatter = new Intl.DateTimeFormat('default', options); // Veya bir yerel ayar belirtin: 'fr-FR'
const monthName = formatter.format(date);
console.log(monthName); // Çıktı: (örneğin, "Ekim", "Kasım", vb.)
// Kısa ay adı örneği:
const optionsShort = { month: 'short' };
const formatterShort = new Intl.DateTimeFormat('default', optionsShort);
const shortMonthName = formatterShort.format(date);
console.log(shortMonthName); // Çıktı: (örneğin, "Eki", "Kas", vb.)
Daha ayrıntılı olsa da, bu yaklaşım daha fazla esneklik sunar. Bir DateTimeFormat
nesnesi oluşturup tekrar kullanmak, birden fazla tarih için verimliliği artırır.
Özel Bir Fonksiyon Oluşturma
Daha az verimli ve otomatik yerelleştirmeden yoksun olsa da, özel bir fonksiyon temel mekanizmayı gösterir. Bu yaklaşım genellikle yerleşik yöntemlerden daha az tercih edilir.
const monthNames = ["Ocak", "Şubat", "Mart", "Nisan", "Mayıs", "Haziran",
"Temmuz", "Ağustos", "Eylül", "Ekim", "Kasım", "Aralık"
];
function getMonthName(date) {
return monthNames[date.getMonth()];
}
const date = new Date();
const monthName = getMonthName(date);
console.log(monthName); // Çıktı: (örneğin, "Ekim", "Kasım", vb.)
Bu fonksiyon, ay numaralarını (0-11) adlarıyla eşlemek için bir dizi kullanır. date.getMonth()
‘ün sıfır tabanlı bir indeks döndürdüğüne dikkat edin.
Özetle, yerleşik yerelleştirmeleri için toLocaleString()
ve Intl.DateTimeFormat
önerilir. Özel fonksiyon yalnızca belirli, standart dışı gereksinimler olduğunda kullanılmalıdır.