有时咱们前端须要带 TZ 的工夫格局该怎么转,网上简直没有相似的工具函数
上面是我本人写的一个折中办法,不是很准确,然而能够准确到毫秒级
间接上代码
export const TimeUtils = {format(fmt, date = new Date()) {date = new Date(date);
let ret;
let 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;
},
formatUTC: () => {let time = TimeUtils.format('YYYY-MM-DD hh:mm:ss', new Date().getTime() - 8 * 3600 * 1000)
time = time.replace(/\//g, '-')
time = time.replace('','T')
time = time + '.435Z' // .435z 是仿带 Z 格局随便加上的,能够是任意三位数字加 Z
return time
}
};
执行后果
TimeUtils.formatUTC()
'2022-06-25T09:26:16.435Z'
欢送点赞评论加转发,本文由蜗牛老湿开发一键公布平台 butterfly 公布