首页 > 其他分享 >js怎么将服务器GMT时间转为中国标准时间

js怎么将服务器GMT时间转为中国标准时间

时间:2024-03-14 18:13:48浏览次数:22  
标签:res js date 时间 new Date 服务器 GMT

最近遇到一个需求:

   antd的时间组件有个默认的时间,我们是前端自己根据电脑的系统时间 new Date()来定的,new Date()的时间就是系统的时间。但是当测试人员搞事情,把系统时间改了时区,电脑日期改变,那antd组件的默认时间也会跟着变,所以这个时候就不对了,测试说应该都根据中国标准时间来默认显示的

  所以前端再想直接new Date()就不对了,我找了半天,找到下面这个解决方法:

既然不能根据系统时间来设置,那根据服务器的时间是可以的吧,我先获取服务器的时间

  //这里拿获取百度的地址的时间打比方
    const convertToCST= async()=>{
    const  dateVal = await axios.head('https://www.baidu.com?_='+new Date().getTime()).then(res=>{

    //res就是获取到的格林威治时间:GMT格式的
    // 示例:假设服务器时间是2023-04-01 12:00:00 GMT
    let serverTime = new Date(res.header.date);//这里把获取到的GMT时间转换成Date对象;

     if(res.status===200){
     //设置date对象,并直接设置GMT时间
     let date = new Date(serverTime.getTime()+serverTime.getTimezoneOffset()*6000);
      date.setTime(date.getTime()+8*60*60*1000);//这里是将new Date()的时区改为Asia时区
      //返回date,是 转换后的 中国标准时间
      return date
    }           
    })
}

最后调用这个公共函数convertToCST就可以了

convertToCST().then(res=>{
//Thu Mar 14 2024 17:59:20 GMT+0800 (中国标准时间)
console.log(res)//这个res就是获取到的当前服务器的中国标准时间了,可以对这个格式进行具体格式转化,得到自己想要的格式
})

标签:res,js,date,时间,new,Date,服务器,GMT
From: https://www.cnblogs.com/maleijiejie/p/18073626

相关文章

  • html5&css&js代码 018颜色表
    html5&css&js代码018颜色表一、代码二、效果三、解释这段代码展示了一个基本的颜色表,方便参考使用,同时也应用了各种样式应用方式。一、代码<!DOCTYPEhtml><htmllang="zh-cn"><head><title>编程笔记html5&css&js颜色表</title><metacharset="utf......
  • 远程办公、企业内网服务器的Code-Server上如何配置使用CodeGeeX插件
    很多小伙伴都会在工作中使用code-server,比如说远程办公,当你需要在家访问你的工作环境,亦或者是你们公司的Docker是放入服务器中。code-server无疑是最好的选择,它可以让你通过互联网安全地连接到远程服务器上的开发环境并且使用VSCode。这也符合code-server的初衷——能够在任何......
  • java毕设jsp酒店预约管理系统毕业设计
    简介基于JavaJSP的酒店预约管理系统是一个利用Java技术和JSP页面实现的酒店在线预约平台。该系统通过简洁明了的界面,为用户提供酒店信息查询、房间预约及管理等功能,同时支持管理员对酒店及预约信息进行高效管理。采用JSP技术,使得系统具备良好的扩展性和可维护性,为用户提......
  • JS 队列(数据结构)- 笔记
    【队列】代码:/***链表队列*/classLinkedListQueue{/**@type{ListNode}*/#head;/**@type{ListNode}*/#tail;/**@type{number}*/#size;constructor(){this.#head=null;this.#tail=null;this......
  • Rust解析JSON,结构体序列化和反序列化
    Rust参考教程:HereJSON一种常用的由键值对组成的数据对象;本文将通过多个例子讲解在Rust中如何解析JSON内容,以及如何将结构体转换成JSON字符串。在Rust中解析JSON文本通常需要使用一个JSON库。Rust标准库中有一个名为serde的库,它提供了序列化和反序列化结构体和其他数据类型的......
  • Centos部署Teamspeak语音服务器
    本案例基于阿里云ECS部署,其厂商设备均可1、关闭防火墙和selinux安全$systemctlstopfirewalld$systemctldisablefirewalld$sed-i's/SELINUX=.*/SELINUX=disabled'//etc/selinux/config$setenforce02、下载文件$yuminstall-ywget$wgethttps://file......
  • 都2024年了还在写JQuery?一篇文章带你快速入门Vue.js
    Vue快速入门笔记本文主要介绍vue.js的核心知识点,看完本篇文章只能算是简单入门了解Vue,后续还需要读者在项目中不断练习研究。一、前端核心分析1.1、概述Soc原则:关注点分离原则Vue的核心库只关注视图层,方便与第三方库或既有项目整合。HTML+CSS+JS:视图:给用户......
  • Boostrap5通过JS控制Offcanvas的显示隐藏
    涉及的技术栈vue3vitebootstrap5背景在用bootstrap5的时候遇到一个问题,就是offcanvas在nav上的时候居然会有两个背景BackDrop,关闭之后页面上还有一个backdrop留在那bootstrap5文档里面提供了几个Method可以控制Offcanvas实例的显示隐藏,但是不会用复现问题点击offcan......
  • fastjson改造
    背景fastjson太过于侧重性能,对于部分高级特性支持不够,而且部分自定义特性完全偏离了json和js规范导致和其他框架不兼容;fastjson文档缺失较多,部分Feature甚至没有文档,而且代码缺少注释较为晦涩;fastjson的CVEbug监测较弱,很多CVE数据库网站上有关fastjson的CVE寥寥无几,例如近......
  • 2024HVV行动-进军蓝中研判(log4j2、fastjson、Struts2、Shiro)
    1、log4j2特征:恶意请求中包含JNDI协议地址,如"ldap://"、"rmi://"等,被log4j2解析为JNDI查找。原理:在日志输出中,未对字符进行严格的过滤,执行了JNDI协议加载的远程恶意脚本,从而造成远程代码执行。影响:严重的RCE,2.0≤ApacheLog4j2<2.15.0-rc2攻击字段:${jndi......