我有一个网页,每天,每月和每年有三个下拉菜单.如果我使用Date带有数字的JavaScript 构造函数,那么我得到一个Date当前时区的对象:
new Date(xiYear, xiMonth, xiDate)
Run Code Online (Sandbox Code Playgroud)
给出正确的日期,但由于夏令时,它认为日期是GMT + 01:00.
这里的问题是我然后将它传递Date给Ajax方法,当日期在服务器上反序列化时,它已经转换为GMT,因此丢失了一个小时,将一天移回一.现在我可以将日,月和年单独传递到Ajax方法中,但似乎应该有更好的方法.
接受的答案指出了我正确的方向,但只是单独使用setUTCHours()改变了:
Apr 5th 00:00 GMT+01:00
Run Code Online (Sandbox Code Playgroud)
至
Apr 4th 23:00 GMT+01:00
Run Code Online (Sandbox Code Playgroud)
然后我还必须设置UTC日期,月份和年份以结束
Apr 5th 01:00 GMT+01:00
Run Code Online (Sandbox Code Playgroud)
这就是我想要的.
我将特定时区的日期时间作为字符串,我想将其转换为本地时间.但是,我不知道如何在Date对象中设置时区.
例如,Feb 28 2013 7:00 PM ET,我可以
var mydate = new Date();
mydate.setFullYear(2013);
mydate.setMonth(02);
mydate.setDate(28);
mydate.setHours(7);
mydate.setMinutes(00);
Run Code Online (Sandbox Code Playgroud)
据我所知,我可以设置UTC时间或本地时间.但是,我如何在另一个时区设置时间?
我试图使用添加/减去UTC的偏移量,但我不知道如何应对夏令时.我不确定我是否正朝着正确的方向前进.
如何在javascript中将时间从不同的时区转换为当地时间?
这是我需要的一些JS代码:
var secDiff = Math.abs(Math.round((utc_date-this.premiere_date)/1000));
this.years = this.calculateUnit(secDiff,(86400*365));
this.days = this.calculateUnit(secDiff-(this.years*(86400*365)),86400);
this.hours = this.calculateUnit((secDiff-(this.years*(86400*365))-(this.days*86400)),3600);
this.minutes = this.calculateUnit((secDiff-(this.years*(86400*365))-(this.days*86400)-(this.hours*3600)),60);
this.seconds = this.calculateUnit((secDiff-(this.years*(86400*365))-(this.days*86400)-(this.hours*3600)-(this.minutes*60)),1);
Run Code Online (Sandbox Code Playgroud)
我想在之前获得日期时间,但是如果正在使用DST,则日期将关闭1小时.我不知道如何检查DST是否正在使用中.
我如何知道夏令时的开始和结束时间?
我想将Accept-language请求标题更改为我想要的任何chrome,是否有任何扩展或插件我可以做到.我希望能够改变语言环境和语言.主要要求是更改区域设置.
我知道如何获得时区偏移,但我需要的是能够检测"美国/纽约"之类的东西.这甚至可能来自JavaScript还是我将不得不根据偏移量进行猜测?
使用moment.js和moment-timezone.js时,获取客户端时区并将其转换为其他时区的最佳方法是什么?
我想找出什么是客户时区,然后将其日期和时间转换为其他时区.
有没有人有这方面的经验?
我需要一种方法来检测给定日期对象的时区.我不想要偏移,也不想要完整的时区名称.我需要获得时区缩写.例如,GMT,UTC,PST,MST,CST,EST等......
这可能吗?我得到的最接近的是解析date.toString()的结果,但即使这样也不会给我一个缩写.它给了我时区的长名.
我正在MVC3中构建一个应用程序,当用户进入我的网站时,我想知道该用户的时区.我想知道如何在c#中执行此操作而不是在javaScript中执行此操作?
我可以使用jQuery获取客户端的时区名称吗?
示例:Pacific SA标准时间,格林威治标准时间,如下所示:https://en.wikipedia.org/wiki/List_of_time_zones_by_country