logo
eng-flag

Moment.js Notları ve İpuçları

Moment.js, JavaScript'te tarihleri ayrıştırma, doğrulama, işleme ve biçimlendirme için güçlü bir kütüphanedir. Bu hızlı referans, yaygın olarak kullanılan Moment.js işlevlerini örneklerle birlikte sunar.

İçindekiler

  1. Ayrıştırma
  2. Getir ve Ayarla
  3. Manipülasyon
  4. Görüntüleme
  5. Sorgulama
  6. Süre
  7. Yardımcı İşlevler

Ayrıştırma

Moment Nesneleri Oluşturma

// Geçerli tarih ve saat
moment();

// ISO 8601 dizesinden
moment("2023-03-15T12:00:00");

// Unix Zaman Damgasından (milisaniye)
moment(1678896000000);

// Tarih nesnesinden
moment(new Date(2023, 2, 15));

// Belirli bir biçim
moment("15/03/2023", "DD/MM/YYYY");

// UTC Ayrıştırma
moment.utc("2023-03-15T12:00:00Z");

Getir ve Ayarla

Getiriciler

const now = moment();

now.year();       // Yılı getirir
now.month();      // Ayı getirir (0-11)
now.date();       // Ayın gününü getirir
now.day();        // Haftanın gününü getirir (0-6)
now.hour();       // Saati getirir
now.minute();     // Dakikayı getirir
now.second();     // Saniyeyi getirir
now.millisecond();// Milisaniyeyi getirir

Ayar Yapıcılar

const date = moment();

date.year(2024);
date.month(0);    // Ocak
date.date(1);
date.hour(12);
date.minute(30);
date.second(0);
date.millisecond(0);

// Zincirleme
date.year(2024).month(0).date(1).hour(12).minute(30).second(0).millisecond(0);

Manipülasyon

Zaman Ekleme

moment().add(7, 'days');
moment().add(1, 'months');
moment().add(1, 'years');
moment().add({days: 7, months: 1, years: 1});

Zaman Çıkarma

moment().subtract(7, 'days');
moment().subtract(1, 'months');
moment().subtract(1, 'years');
moment().subtract({days: 7, months: 1, years: 1});

Zamanın Başlangıcı

moment().startOf('day');
moment().startOf('month');
moment().startOf('year');
moment().startOf('week');

Zamanın Sonu

moment().endOf('day');
moment().endOf('month');
moment().endOf('year');
moment().endOf('week');

Görüntüleme

Biçimlendirme

moment().format('YYYY-MM-DD');
moment().format('DD/MM/YYYY');
moment().format('MMMM Do YYYY, h:mm:ss a');
moment().format('dddd');
moment().format('LT');   // 20:30
moment().format('LTS');  // 20:30:25
moment().format('L');    // 09/04/2023
moment().format('LL');   // 4 Eylül 2023
moment().format('LLL');  // 4 Eylül 2023 20:30
moment().format('LLLL'); // Pazartesi, 4 Eylül 2023 20:30

Şu Anki Zamana Göre Süre

moment("20111031", "YYYYMMDD").fromNow();
// => "12 yıl önce"

moment().startOf('day').fromNow();
// => "16 saat önce"

İki Tarih Arasındaki Süre

const a = moment([2023, 0, 1]);
const b = moment([2024, 0, 1]);
a.diff(b, 'days'); // -365

Sorgulama

Önce mi

moment('2010-10-20').isBefore('2010-10-21'); // true

Sonra mı

moment('2010-10-20').isAfter('2010-10-19'); // true

Aynı mı

moment('2010-10-20').isSame('2010-10-20'); // true
moment('2010-10-20').isSame('2010-10-21', 'month'); // true

Artık Yıl mı

moment([2000]).isLeapYear(); // true
moment([2001]).isLeapYear(); // false

DST (Yaz Saati Uygulaması) mi

moment([2023, 5, 1]).isDST(); // bir çok zaman diliminde true

Süre

Süre Oluşturma

moment.duration(1, 'days');
moment.duration(2, 'weeks');
moment.duration({
    seconds: 2,
    minutes: 2,
    hours: 2,
    days: 2,
    weeks: 2,
    months: 2,
    years: 2
});

Süreyi İnsanlaştırma

moment.duration(1, "minutes").humanize(); // bir dakika
moment.duration(24, "hours").humanize(); // bir gün

Yardımcı İşlevler

Unix Zaman Damgası

moment().unix(); // Unix Epoch'tan bu yana geçen saniyeler

Ayda Gün Sayısı

moment("2012-02", "YYYY-MM").daysInMonth(); // 29

Yaz Saati Uygulaması mı

moment([2023, 5, 1]).isDST(); // bir çok zaman diliminde true

Yerel Ayar

moment.locale('fr');
moment(1316116057189).fromNow(); // il y a 12 ans

moment.locale('es');
moment(1316116057189).fromNow(); // hace 12 años

Geçerli mi

moment("2023-01-01").isValid(); // true
moment("not-a-date").isValid(); // false

Not: Proje ekibi, yeni projeler için yerel JavaScript Date nesnelerini veya date-fns veya Luxon gibi modern kütüphaneleri kullanmayı önerir. Ancak, Moment.js mevcut projelerde hala yaygın olarak kullanılmaktadır.

2024 © Tüm hakları saklıdır - buraxta.com