js处理django后端传输的json中的datetime对象
django后台返回如下的json数据
[{"Blog_id": 3,"Blog_user_id": "test02_id","Blog_user_name": "test02_id","Blog_True_name": "test02_id","Blog_user_Balance": "120.90","Blog_User_Operation": "test02_id","Blog_Create_Time": "2020-11-25T16:10:26.728737+08:00"},{"Blog_id": 2,"Blog_user_id": "test02_id","Blog_user_name": "test02_id","Blog_True_name": "test01_id","Blog_user_Balance": "1290.09","Blog_User_Operation": "test01_id","Blog_Create_Time": "2020-11-25T16:10:00.664230+08:00"}]
我们发现其中的Blog_Create_Time字段的值为"2020-11-25T16:10:00.664230+08:00"
我们应该讲数据转化成2020-11-25 16:10
所以我们应使用如下的js代码进行数据处理
function dateFormat(fmt, date) {let ret = "";date = new Date(date);const opt = {'Y+': date.getFullYear().toString(), // 年'm+': (date.getMonth() + 1).toString(), // 月'd+': date.getDate().toString(), // 日'H+': date.getHours().toString(), // 时'M+': date.getMinutes().toString(), // 分'S+': date.getSeconds().toString() // 秒// 有其他格式化字符需求可以继续添加,必须转化成字符串}for (let k in opt) {ret = new RegExp('(' + k + ')').exec(fmt)if (ret) {fmt = fmt.replace(ret[1],ret[1].length === 1 ? opt[k] : opt[k].padStart(ret[1].length, '0'))}}return fmt}
测试代码如下
<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><title>Title</title></head><body><script>function dateFormat(fmt, date) {let ret = "";date = new Date(date);const opt = {'Y+': date.getFullYear().toString(), // 年'm+': (date.getMonth() + 1).toString(), // 月'd+': date.getDate().toString(), // 日'H+': date.getHours().toString(), // 时'M+': date.getMinutes().toString(), // 分'S+': date.getSeconds().toString() // 秒// 有其他格式化字符需求可以继续添加,必须转化成字符串}for (let k in opt) {ret = new RegExp('(' + k + ')').exec(fmt)if (ret) {fmt = fmt.replace(ret[1],ret[1].length === 1 ? opt[k] : opt[k].padStart(ret[1].length, '0'))}}return fmt}console.log(dateFormat(dateFormat('YYYY-mm-dd HH:MM',"2020-11-25T16:10:00.664230+08:00")))</script></body></html>
转化成功的结果为
2020-11-25 16:10
