不同时区转换时间戳

时区转时间戳,有人会很奇怪 。时间戳不就是当前时间到1970年1月1日 0时0分0秒的吗? 需要转吗?

最近有一个需求是需要的,解释 是这样的 :返回的时间戳是根据你当前时区 转到1970年1月1日 0时0分0秒的 如果你是在另外一个时区要访问另一个时区的数据 传参就需要进行转换(不知道我有没有理解错)

错了  希望 指出,其实我也不是弄的很懂 谢谢!! 我也怕误导,自己也菜  哈哈

自己写了一个函数 貌似解决当时传参的问题

changeStamp(timeStamp,countryTimeZone){

   //获取当前时区
  let nowTimeZone = new Date(timeStamp).getTimezoneOffset() / 60;

  //获取当前所在时区 与 需要转换时区 相差的时间戳

  let changTimeZone = (nowTimeZone + countryTimeZone) * 60 * 60 * 1000;

  timeStamp -= changeTimeZone;

  return timeStamp;

 }

当时 是应付了需求,不知道 有没有错误  如有发现 请指出  万分感谢,让我可以向大佬学习

原文地址:https://www.cnblogs.com/TreeCTJ/p/10927993.html

时间: 2024-10-10 18:23:45

不同时区转换时间戳的相关文章

时间、时区、时间戳

最近遇到转换时间戳的需求,本篇记录时间.时区.时间戳等概念,并提供一个初级的换算工具类. 时间戳是一个很神奇的东西,地球上任何一个位置,此时此刻,时间戳都是一致的,然而时间就不一样了,东八区早上九点的时候,伦敦0区是当天凌晨一点,在跨越了日期线的时区,连日期都会不一致.而我们的项目提供给全球客户,因此,使用时间戳就很有必要了. Unix时间戳,长度是10位数字.但是在安卓里获取到的当前时间戳会有13位,用时间戳来设置当前时间的时候也需要是13位. (安卓有一个设置系统时间的方法,代码如下,传一个

Java日期时间API系列19-----Jdk8中java.time包中的新的日期时间API类,ZonedDateTime与ZoneId和LocalDateTime的关系,ZonedDateTime格式化和时区转换等。

通过Java日期时间API系列6-----Jdk8中java.time包中的新的日期时间API类中时间范围示意图:可以很清晰的看出ZonedDateTime相当于LocalDateTime+ZoneId. ZonedDateTime是用来处理时区相关的时间,它的各种计算都离不开ZoneId.先看ZoneId. 1. ZoneId 为时区ID,比如Europe/Paris,表示欧洲巴黎时区 1.1 时区相关知识,时区,UTC时间,GMT时间,Unix时间戳 时区 地球自西向东旋转,东边比西边先看到

ios中的safari转换时间戳问题

后台下发的时间格式如:2016-09-15 15:30:10:也没多想,直接用new Date('2016-09-15 15:30:10').getTime()获取时间戳:开发时候,电脑调试OK,当放到触屏调试的时候,AndroidOK,但是ios也不行了,结果是:NaN-NaN1-NaN Invalid Datewhat?后面了解到:ios能读取的格式是:2016/09/15 15:30:10好吧,那一写成转换时间戳的统一方法来调用: exports.exchangeTime = functi

转换时间戳与时间截取

//时间截取与转换时间戳 function timeChange(timeStamp) { var newDate = new Date(timeStamp); Date.prototype.format = function (format) { var date = { "M+": this.getMonth() + 1, "d+": this.getDate(), "h+": this.getHours(), "m+":

C#技巧(1)C#转换时间戳(转载)

C#技巧(1)C#转换时间戳 经常发现很多地方使用一个时间戳表示时间.比如: 1370838759  表示 2013年6月10日 12:32:39. 我们就需要一个工具,方便地转换这种时间格式 什么是时间戳? 时间戳, 又叫Unix Stamp. 从1970年1月1日(UTC/GMT的午夜)开始所经过的秒数,不考虑闰秒. C# 时间戳转换为普通时间 // 时间戳转为C#格式时间 private DateTime StampToDateTime(string timeStamp) { DateTi

C# 技巧(1) C# 转换时间戳

经常发现很多地方使用一个时间戳表示时间.比如: 1370838759  表示 2013年6月10日 12:32:39. 我们就需要一个工具,方便地转换这种时间格式 什么是时间戳? 时间戳, 又叫Unix Stamp. 从1970年1月1日(UTC/GMT的午夜)开始所经过的秒数,不考虑闰秒. C# 时间戳转换为普通时间 // 时间戳转为C#格式时间 private DateTime StampToDateTime(string timeStamp) { DateTime dateTimeStar

时区转换

工作中遇到的问题,服务器在美国,但是客户在印度,所以要把本地时间/服务器时间转换成印度时间.代码如下: 将本地时区转换成印度时区: String indianTime = string.Empty; DateTime localTime = DateTime.Now; indianTime=TimeZoneInfo.ConvertTimeBySystemTimeZoneId(localTime, "India Standard Time").ToString("dd-MMM-

Flex Date 时区转换

项目放到国外服务上时,由于有时区差异,要获得服务器时间就得进行时区转换 private function getTimeZoneFix(fixDate:Date, GMTHour:NUmber = 8):Date { var gmtDate:Date = new Date(fixDate); var hourOffset:Number = gmtDate.getTimezoneOffset() / 60 - GMTHour; gmtDate.setHours(gmtDate.getHours()

SQL Server全时区转换

SQL Server全时区转换 假如你的应用程序是跨国(例如跨国银行交易)使用的话,那么数据库的一些国际化特性支持可以说是非常重要 其中最常见的就是各国时区上的差异,由于SQL Server getdate()读取的是本地机器所返回的值. 并不包含数据库时区位移,SQL Server2008新增了 datetimeoffset  数据类型(结合时区为基础的当日时间) 搭配SWITCHOFFSET 函数来更方便的处理时区转换问题 --时区转换 SELECT SYSDATETIMEOFFSET()