使用 .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;
  },
相关推荐
谢尔登8 小时前
Monorepo 架构
前端·arcgis·架构
栀秋6668 小时前
你会先找行还是直接拍平?两种二分策略你Pick哪个?
前端·javascript·算法
漂流瓶jz8 小时前
PostCSS完全指南:功能/配置/插件/SourceMap/AST/插件开发/自定义语法
前端·javascript·css
xhxxx8 小时前
传统工具调用太痛苦?LangChain 一键打通 LLM 与真实世界
前端·langchain·llm
南山安9 小时前
LangChain学习:Memory实战——让你的大模型记住你
前端·javascript·langchain
BD_Marathon9 小时前
Promise基础语法
开发语言·前端·javascript
BOF_dcb10 小时前
网页设计DW
前端
千寻girling10 小时前
计算机组成原理-全通关源码-实验(通关版)---头歌平台
前端·面试·职场和发展·typescript·node.js
karshey10 小时前
【前端】解决:点击一个button,发现不触发点击事件
前端
用泥种荷花10 小时前
【前端学习AI】Function Calling
前端