使用 .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;
  },
相关推荐
q***952213 小时前
SpringMVC 请求参数接收
前端·javascript·算法
|晴 天|13 小时前
Vite 为何能取代 Webpack?新一代构建工具的崛起
前端·webpack·node.js
带只拖鞋去流浪13 小时前
迎接2026,重新认识Webpack5
前端·webpack
HIT_Weston14 小时前
43、【Ubuntu】【Gitlab】拉出内网 Web 服务:静态&动态服务
前端·ubuntu·gitlab
LucidX14 小时前
Web——反向代理、负载均衡与 Tomcat 实战部署
前端·tomcat·负载均衡
sen_shan14 小时前
《Vue项目开发实战》第八章:组件封装--vxeGrid
前端·javascript·vue.js
五点六六六14 小时前
双非同学校招笔记——离开字节入职小📕
前端·面试·程序员
IT_陈寒14 小时前
Redis实战:5个高频应用场景下的性能优化技巧,让你的QPS提升50%
前端·人工智能·后端
2***574214 小时前
Vue项目国际化实践
前端·javascript·vue.js
我也爱吃馄饨14 小时前
写的webpack插件如何适配CommonJs项目和EsModule项目
java·前端·webpack