使用 .toISOString() 方法生成当前时间的ISO格式字符串,解决UTC时区差问题

方法分析:

日常开发中,有时我们需要向后端传递的时间值可能并非一个时间对象,而是字符串格式。

例 1:[2023-08-16T08:07:25.577Z]

但是我们通过 new Date() 之后直接使用 .toString() 方法得到的却并非这种格式。

例 2:Tue Jan 01 2013 00:00:00 GMT+0800 (CST)

方法演示:

我们使用 .toISOString() 可以得到【例1】所示的时间格式,但是此方法返回的总是UTC时区的时间。

现在需要的就是解决时间差的问题,以下是解决方法的代码展示:

复制代码
// 获取当前时间ISO格式字符串
  getCurrentTime() {
    let datetime = new Date();
    let timezoneOffset = datetime.getTimezoneOffset() * 60000; // 获取当前时区与UTC的时间差(以毫秒为单位)
    let localDatetime = new Date(datetime - timezoneOffset); // 调整时间,得到当前时区时间
    let isoString = localDatetime.toISOString();
    return isoString;
  },
相关推荐
mCell4 小时前
【短文】不是最强,是最适合
前端·aigc·deepseek
余瑜鱼鱼鱼5 小时前
HTML常用标签总结
前端·html
Jave21085 小时前
Vue 中 mixins 混合开发的主要使用场景有哪些?
前端·vue.js
徐同保5 小时前
openclaw安装
前端
JEECG低代码平台5 小时前
JeecgBoot低代码平台 Ant Design Vue 4.x 升级避坑指南
前端·vue.js·低代码
yashuk5 小时前
Go-Gin Web 框架完整教程
前端·golang·gin
唐叔在学习6 小时前
e.preventDefault()到底怎么用?
前端·javascript
北寻北爱6 小时前
面试题-vue篇
前端·vue.js
XPoet6 小时前
AI 编程工程化:Skill——给你的 AI 员工装上技能包
前端·后端·ai编程
JEECG低代码平台6 小时前
JeecgBoot低代码平台 Qiankun 微前端集成指南:主应用配置全流程
前端·低代码