Menukar Rentetan dd-mm-yyyy kepada Objek Tarikh dalam JavaScript
Tugas yang ada ialah menukar rentetan dalam format "dd -mm-yyyy" ke objek Tarikh menggunakan JavaScript. Fungsi Date(string) baru gagal apabila mencuba penukaran ini kerana kehadiran simbol '-'. Untuk mengatasi cabaran ini, beberapa penyelesaian disediakan.
1. Pisahkan pada "-"
Satu pendekatan ialah memisahkan rentetan kepada tiga komponennya: hari, bulan dan tahun. Ini boleh dicapai menggunakan kaedah split("-"):
var from = $("#datepicker").val().split("-"); var f = new Date(from[2], from[1] - 1, from[0]);
2. Gunakan Ungkapan Biasa
Ungkapan biasa boleh digunakan untuk mengekstrak hari, bulan dan tahun daripada rentetan:
var date = new Date("15-05-2018".replace( /(\d{2})-(\d{2})-(\d{4})/, "//"));
3. Refactor into a Function
Jika penukaran diperlukan beberapa kali, adalah dinasihatkan untuk mencipta fungsi boleh guna semula:
function toDate(dateStr) { var parts = dateStr.split("-"); return new Date(parts[2], parts[1] - 1, parts[0]); }
Fungsi ini boleh digunakan seperti berikut:
var from = $("#datepicker").val(); var f = toDate(from);
4. JavaScript Moden (ES6)
Dalam ES6, pemusnahan tatasusunan boleh digunakan untuk mengekstrak komponen:
const toDate = (dateStr) => { const [day, month, year] = dateStr.split("-"); return new Date(year, month - 1, day); };
Atas ialah kandungan terperinci Bagaimana untuk Menukar Rentetan \'dd-mm-yyyy\' kepada Objek Tarikh JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!