ASP.NET MVC JsonResult 日期格式
在ASP.NET MVC 中傳回JsonResult 時,您可能會遇到日期為屬性以“/Date(1239018869048)/”等格式序列化。 JavaScript 無法讀取此格式,並且在應用程式中處理日期時可能會導致問題。
解決方案1:在JavaScript 中手動解析日期字串
一種方法是解析使用以下程式碼在JavaScript 中手動輸入日期字串:
value = new Date(parseInt(value.replace("/Date(", "").replace(")/",""), 10));
此程式碼刪除「Date(」和「)」字元
解決方案2:將 JSON.parse() 與 Reviver 函數結合使用
另一個選擇是使用 JSON。 parse() 函數和 reviver 函數將日期字串轉換為 Date 物件。例如:
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; });
在此程式碼中,reviver 函數檢查該值是否為字串並與「/Date((d*))/」模式相符。如果是,則使用 Date 建構函式將該值轉換為 Date 物件。否則,傳回原始值。
其他注意事項
需要注意的是,JSON 規範並沒有定義標準日期格式。 ASP.NET MVC 使用的「/Date(ticks)/」格式是一種約定,允許 JSON 表示 Date 物件。
在 JavaScript 中處理日期時,應考慮以下事項:
以上是如何在 JavaScript 中處理 ASP.NET MVC JsonResult 的非標準日期格式?的詳細內容。更多資訊請關注PHP中文網其他相關文章!