Rumah >hujung hadapan web >tutorial js >Bagaimana untuk Mengesahkan Rentetan Tarikh dalam Format \'mm/dd/yyyy\' dalam JavaScript?

Bagaimana untuk Mengesahkan Rentetan Tarikh dalam Format \'mm/dd/yyyy\' dalam JavaScript?

Barbara Streisand
Barbara Streisandasal
2024-10-31 12:54:02486semak imbas

How to Validate Date Strings in

Mengesahkan Rentetan Tarikh dalam Format "mm/dd/yyyy" dalam JavaScript

Mengesahkan rentetan tarikh adalah penting untuk memastikan pengendalian data yang tepat dalam pelbagai aplikasi. Satu format yang biasa digunakan ialah "mm/dd/yyyy". Panduan berikut memberikan pandangan tentang cara mengesahkan tarikh dalam format khusus ini menggunakan JavaScript.

Kod Bermasalah

Beberapa pengguna telah menghadapi masalah dengan coretan kod khusus untuk tarikh pengesahan. Kod yang disediakan menyemak corak yang betul, mengekstrak bahagian tarikh dan mengesahkan kesahihannya. Walau bagaimanapun, ia mungkin gagal disebabkan oleh sebab berikut:

  • Pengendalian Bulan yang Tidak Konsisten: Kod menolak 1 daripada nilai bulan yang diekstrak untuk melaraskan pengindeksan bulan berasaskan sifar JavaScript. Walau bagaimanapun, ia harus menolak 1 sebelum menggunakan nilai dengan Date() untuk memastikan perwakilan bulan yang tepat.
  • Pengendalian Ralat Tidak Jelas: Kod hanya mencetak mesej ralat generik tanpa memberikan butiran khusus tentang sebab pengesahan tarikh gagal.

Fungsi Pengesahan yang disemak

Untuk menangani isu ini, kami boleh menyemak semula fungsi pengesahan seperti berikut:

<code class="javascript">function isValidDate(dateString) {
  // Regex pattern checking for "mm/dd/yyyy" format
  if (!/^\d{1,2}\/\d{1,2}\/\d{4}$/.test(dateString)) return false;

  // Extracting date parts as integers
  const [month, day, year] = dateString.split("/").map(Number);

  // Checking valid year and month ranges
  if (year < 1000 || year > 3000 || month < 1 || month > 12) return false;

  // Determining the number of days in the specified month
  const monthDays = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];
  if (year % 400 === 0 || (year % 100 !== 0 && year % 4 === 0)) monthDays[1] = 29;

  // Verifying the day value within the month's range
  return day > 0 && day <= monthDays[month - 1];
}</code>

Atas ialah kandungan terperinci Bagaimana untuk Mengesahkan Rentetan Tarikh dalam Format \'mm/dd/yyyy\' dalam JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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