js将UTC时间转化为当地时区时间(UTC转GMT)
我们在进行网站开发的时候有可能会涉及到国外的用户或者用户身在国外,这时就会存在时差问题,比如说我们在中国的时间是08:00,但是此时韩国的时间是09:00,如果在网页上需要进行相关显示的话就会出现问题,那作为一个前端该怎么解决这个问题呢?
前端通过请求获取的时间一般都是时间戳格式,这个时间戳一般就是UTC时间(*UTC:最接近标准时间的一个时间标准),而我们在网页上需要显示的是GMT时间,下面就是根据本地时间获得GMT时间和任意时区的时间函数:
1.将本地时间转化成任意时区的时间(如:通过本地时间获取韩国的时间):
首先我们需要知道韩国的时区,这个可以网上查,韩国时区为东9区.
var d=new Date();
var localTime = d.getTime();
var localOffset=d.getTimezoneOffset()*60000; //getTimezoneOffset()返回是以分钟为单位,需要转化成ms
var utc = localTime + localOffset;
offset =9; //以韩国时间为例,东9区
korean= utc + (3600000*offset);
nd = new Date(korean);
console.log("Korean time is " + nd.toLocaleString());
2.UTC时间转化为本地时区时间(UTC时间格式一般为 "2017-11-16T05:23:20.000Z");
convertUTCTimeToLocalTime: function (UTCDateString) {
if(!UTCDateString){
return '-';
}
function formatFunc(str) { //格式化显示
return str > 9 ? str : '0' + str
}
var date2 = new Date(UTCDateString); //这步是关键
var year = date2.getFullYear();
var mon = formatFunc(date2.getMonth() + 1);
var day = formatFunc(date2.getDate());
var hour = date2.getHours();
var noon = hour >= 12 ? 'PM' : 'AM';
hour = hour>=12?hour-12:hour;
hour = formatFunc(hour);
var min = formatFunc(date2.getMinutes());
var dateStr = year+'-'+mon+'-'+day+' '+noon +' '+hour+':'+min;
return dateStr;
},
console.log(convertUTCTimeToLocalTime("2017-11-16T05:23:20.000Z"));
//2017-11-16 PM 01:23
参考地址:http://bjtime.cn/info/view.asp?id=223
js将UTC时间转化为当地时区时间(UTC转GMT)的更多相关文章
- js将UTC时间转化为当地时区时间
js将UTC时间转化为当地时区时间(UTC转GMT) 我们在进行网站开发的时候有可能会涉及到国外的用户或者用户身在国外,这时就会存在时差问题,比如说我们在中国的时间是08:00,但是此时韩国的时间 ...
- PHP 获取中国时间,即上海时区时间
/** * 获取中国时间,即上海时区时间 * @param <type> $format * @return <type> */ function getChinaTime($ ...
- 根据本地/服务器时间获取指定时区时间 new Date指定时区时间
1.代码 function getTimeByTimeZone(timeZone){ var d=new Date(); localTime = d.getTime(), localOffset=d. ...
- 时区之痒 - 从手机GPS模块获取的时间,真的是北京时间么?
去年互联网地图行业开始引入众包模式,国内比较大的地图商,比如四维图新.高德地图.百度地图纷纷开始推出UGC应用,众包给用户采集门址.公交站等信息,并按照工作量给与采集者一定的回报.我曾经玩过某德推出的 ...
- 用JS将指定时间转化成用户当地时区的时间
公司的项目是面向海外用户的,但是最初的设计没考虑到时差问题,存入数据库的时间都是东八区的时间,导致现在补救有点坑爹...... 有一个需求是,产品详细页需要注明此款产品的开售时间,当海外的用户来访问这 ...
- 关于时区的时间的详解,比如UTC\GMT等
UTC 和 GMT 及 北京时间的关系 UTC和GMT,这两者几乎是同一概念.它们都是指的格林尼治标准时间,只不过UTC的称呼更为正式一点.两者的区别在于前者是一个天文 上的概念,而 后者是基于一个原 ...
- UTC 时间转化为北京时间
// UTC 时间转化为北京时间 function utc2beijing(utcTime) { var T_pos = utcTime.indexOf('T'); var Z_pos = utcTi ...
- JS一个根据时区输出时区时间的函数
做项目遇到的坑爹问题,需要根据时区获取时区中轴线的时间.为此搜了好久网上都没什么JS的代码描述到这一方面,最后自己翻了下高中地理才写了个函数出来. 此图可以看出来,全球分为了0时区,东西1-11区,第 ...
- js Date.UTC() 与 php strtotime()生成的时间截不一样
Difference in UTC date between PHP and Javascript 工作中,因使用highcharts显示数据,需要将PHP 将日期转换为UTC 时区的时间截,然后通过 ...
随机推荐
- Python学习札记(二十四) 函数式编程5 返回函数
参考:返回函数 NOTE 1.高阶函数除了可以接受函数作为参数外,还可以把函数作为结果值返回. eg.求和函数 #!/usr/bin/env python3 def calsums(*args): a ...
- BZOJ 3527 【ZJOI2014】 力
题目链接:力 听说这道题是\(FFT\)板子题,于是我就来写了…… 首先可以发现这个式子:\[E_i=\sum_{j<i}\frac{q_j}{(i-j)^2}-\sum_{j>i}\fr ...
- Java中的组合与聚合
组合和聚合是有很大区别的,这个区别不是在形式上,而是在本质上:比如A类中包含B类的一个引用b,当A类的一个对象消亡时,b这个引用所指向的对象也同时消亡(没有任何一个引用指向它,成了垃圾对象),这种情况 ...
- python 操作Excel表格,解压zip包,压缩zip包,目录遍历
import zipfile import os,shutil import openpyxl file_list_pos="" fileName="" zip ...
- java线程中的interrupt,isInterrupt,interrupted方法
在java的线程Thread类中有三个方法,比较容易混淆,在这里解释一下 (1)interrupt:置线程的中断状态 (2)isInterrupt:线程是否中断 (3)interrupted:返回线程 ...
- wpf--- TextBlock文字设置属性
ProgressBar控件的重要属性: FontFamily——控件中显示文本的字体 FontSize——控件中显示的字体的大小 Foreground——控件 ...
- baseCss/resetCss(转)
原文链接:https://github.com/hangyangws/baseCss#basecss baseCss 意义 统一各个浏览器差异.统一团队开发起始标准.弥补浏览器的“缺点”.提供频繁使用 ...
- vs警告 当前源代码跟内置的版本不一致解决办法
本文转载于:http://blog.csdn.net/bull521/article/details/51334464 vs警告 当前源代码跟内置的版本不一致解决办法 1.删除掉 我的文档/visua ...
- 173. Binary Search Tree Iterator -- 迭代器
Implement an iterator over a binary search tree (BST). Your iterator will be initialized with the ro ...
- 解决PCI Geomatica 无法卸载的问题
之前安装过PCI Geomatica 2016,非正常卸载,应该有一定残留,但我已经尽可能将注册表中包含PCI.Geomatica.Geomatics等关键字的条目删除干净了. 在重新安装新版本201 ...