Format Tarikh JsonResult ASP.NET MVC
Apabila mengembalikan JsonResult dalam ASP.NET MVC, anda mungkin menghadapi isu di mana sifat tarikh berada bersiri dalam format seperti "/Date(1239018869048)/". Format ini tidak boleh dibaca oleh JavaScript dan boleh menyebabkan masalah semasa mengendalikan tarikh dalam aplikasi anda.
Penyelesaian 1: Menghuraikan Rentetan Tarikh Secara Manual dalam JavaScript
Satu pendekatan ialah menghuraikan rentetan tarikh secara manual dalam JavaScript menggunakan kod berikut:
value = new Date(parseInt(value.replace("/Date(", "").replace(")/",""), 10));
Kod ini mengalih keluar "Tarikh(" dan ")" aksara daripada rentetan dan menukarnya kepada objek Tarikh.
Penyelesaian 2: Gunakan JSON.parse() dengan Fungsi Reviver
Pilihan lain ialah menggunakan JSON Fungsi .parse() dengan fungsi reviver yang menukar rentetan tarikh kepada objek Tarikh. Contohnya:
var parsed = JSON.parse(data, function(key, value) { if (typeof value === 'string') { var d = /\/Date\((\d*)\)\//.exec(value); return (d) ? new Date(+d[1]) : value; } return value; });
Dalam kod ini, fungsi reviver menyemak sama ada nilainya ialah rentetan dan sepadan dengan corak "/Date((d*))/". Jika ia berlaku, nilai ditukar kepada objek Tarikh menggunakan pembina Tarikh. Jika tidak, nilai asal dikembalikan.
Pertimbangan Tambahan
Adalah penting untuk ambil perhatian bahawa spesifikasi JSON tidak mentakrifkan format tarikh standard. Format "/Date(ticks)/" yang digunakan oleh ASP.NET MVC ialah konvensyen yang membenarkan JSON mewakili objek Date.
Apabila mengendalikan tarikh dalam JavaScript, anda harus mempertimbangkan perkara berikut:
Atas ialah kandungan terperinci Bagaimana untuk Mengendalikan Format Tarikh Bukan Standard ASP.NET MVC JsonResult dalam JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!