Rumah > hujung hadapan web > tutorial js > Bagaimanakah Saya Boleh Mengesan Contoh Tarikh JavaScript Tidak Sah dengan Amanah?

Bagaimanakah Saya Boleh Mengesan Contoh Tarikh JavaScript Tidak Sah dengan Amanah?

Mary-Kate Olsen
Lepaskan: 2024-12-13 14:12:11
asal
169 orang telah melayarinya

How Can I Reliably Detect Invalid JavaScript Date Instances?

Mengesan Kejadian Tarikh JavaScript Tidak Sah

Menentukan kesahihan objek Tarikh dalam JavaScript boleh menjadi rumit. Seseorang mungkin tergoda untuk menyemak jenis objek dan instanceof operator, tetapi kaedah ini tidak mencukupi.

Tanggapan JavaScript tentang "Tarikh Tidak Sah"

Tidak seperti sesetengah bahasa, JavaScript tidak tidak membezakan secara eksplisit antara tarikh yang sah dan tidak sah. Sebaliknya, ia mewakili tarikh tidak sah sebagai objek dengan nilai masa NaN (Bukan-Nombor).

Mentakrifkan Fungsi isValidDate

Untuk menyemak sama ada objek Tarikh adalah sah, kita boleh menggunakan langkah berikut:

  1. Sahkan bahawa objek itu ialah Tarikh instance: Object.prototype.toString.call(d) === "[object Date]"
  2. Semak jika nilai masa Date ialah NaN: isNaN(d)

Jika kedua-dua syarat dipenuhi, objek Tarikh dipertimbangkan tidak sah.

Pelaksanaan

Berikut ialah pelaksanaan fungsi isValidDate:

function isValidDate(d) {
  if (Object.prototype.toString.call(d) === "[object Date]") {
    return !isNaN(d);
  } else {
    return false;
  }
}
Salin selepas log masuk

Alternatif untuk Objek Tarikh Konteks Sama

Jika anda hanya bekerja dengan objek Tarikh yang dibuat dalam konteks JavaScript yang sama, versi fungsi yang lebih ringkas boleh digunakan:

function isValidDate(d) {
  return d instanceof Date && !isNaN(d);
}
Salin selepas log masuk

Nota tentang "Tarikh Tidak Sah"

Perlu ambil perhatian bahawa fungsi ini hanya mengesahkan sama ada objek Tarikh adalah sah, bukan sama ada tarikh itu sendiri sah (mis., 2013-13-32). Untuk pengesahan tarikh input, kaedah berbeza diperlukan.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengesan Contoh Tarikh JavaScript Tidak Sah dengan Amanah?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan