Sana obyektlari (Date) — vaqt va sana bilan ishlash vositasi. Har qanday jiddiy ilovada sana bor: foydalanuvchi qachon ro’yxatdan o’tgan, buyurtma qachon berilgan, xabar qachon yuborilgan. JavaScript’da bu vazifani Date obyekti bajaradi.
Date — JavaScript’da sana va vaqtni yaratish, o’qish va formatlash uchun mo’ljallangan o’rnatilgan obyekt. U vaqtni 1970-yil 1-yanvardan boshlab millisekundlarda saqlaydi.
Joriy sana va vaqt
Hozirgi sana va vaqtni olish uchun new Date() ishlatiladi:
let hozir = new Date();
console.log(hozir.getFullYear());
console.log(hozir.getHours());
2026
14
new Date() aynan shu lahzadagi to’liq sana va vaqtni yaratdi. Undan getFullYear, getHours kabi metodlar bilan alohida qismlarni ajratib olamiz.
Sana qismlarini olish
Date obyektidan turli qismlarni olish metodlarini jadvalda ko’ramiz:
| Metod | Nima qaytaradi | Diqqat |
|---|---|---|
getFullYear() |
to’liq yil | 2026 |
getMonth() |
oy | 0 dan boshlanadi! |
getDate() |
oy kuni | 1-31 |
getDay() |
hafta kuni | 0 = yakshanba |
getHours() |
soat | 0-23 |
Muhim noziklik: getMonth() noldan boshlanadi — yanvar 0, dekabr 11. Bu ko’p boshlovchini chalkashtiradi.
Aniq sana yaratish
Istalgan sanani qo’lda yaratish mumkin:
let sana = new Date(2026, 6, 1); // oy 6 = iyul (noldan)
console.log(sana.getFullYear());
console.log(sana.getDate());
2026
1
E’tibor bering: new Date(2026, 6, 1) da 6 — bu iyul (yanvar 0 bo’lgani uchun). Bu qoidani doim yodda tuting.
Sanalar ustida hisob-kitob
Ikki sana orasidagi farqni hisoblash uchun ularni ayirish mumkin — natija millisekundlarda chiqadi:
let boshi = new Date(2026, 0, 1);
let oxiri = new Date(2026, 6, 1);
let farqMs = oxiri - boshi;
let kunlar = farqMs / (1000 * 60 * 60 * 24);
console.log("Farq: " + kunlar + " kun");
Farq: 181 kun
Ikki sanani ayirdik, natijani kunlarga aylantirdik (bir kun = 1000ms × 60s × 60min × 24soat). Bu naqsh muddatni tekshirish, yosh hisoblash yoki hodisalar orasidagi vaqtni o’lchashda ishlatiladi.
Xulosa
Bu bo’limda Date obyekti bilan joriy vaqtni olish, sana qismlarini ajratish (getFullYear, getMonth), aniq sana yaratish va sanalar farqini hisoblashni ko’rib chiqdik. Eng muhim eslatma: getMonth noldan boshlanadi. Keyingi darsda matematik obyekt (Math) ga o’tamiz.