使用时区缩写将一个时区中的日期转换为另一个时区
Convert date in one timezone to another timezone using timezone abbreviations
我正在研究一个web应用程序,用户可以在应用程序中设置他/她的时区,这在应用程序中进一步用于各种日期-时间转换。选择的时区可以不同于用户的本地时区。
我目前卡住了一个问题,我需要比较用户选择的日期(用户假设在他/她在应用程序中选择的时区)与当前日期,以查看所选日期是否为将来的日期。参考我搜索过的所有地方,我发现我可以在用户区域设置或UTC时间中获得当前日期。
所以我的问题的要点是-是否有任何方法转换日期从一个时区到另一个使用时区缩写?
我已经搜索了很多之前张贴在这里,但无法得到任何解决方案。我在搜索过程中发现的大多数地方都表明没有这样的解决方案。
我尝试过使用date.js,但它不满足目的,因为它是相当过时的,而且它支持的时区缩写是一个非常有限的集合。我也看了一下timezoneJS,但我不认为它适用于时区缩写。
是否有任何方法可以使用javascript或jquery完成?
给你:
// calculate local time in a different city given the city's UTC offset
function calcTime(city, offset) {
// create Date object for current location
var date = new Date();
// convert to msec
// add local time zone offset
// get UTC time in msec
var utc = date.getTime() + (date.getTimezoneOffset() * 60000);
// create new Date object for different city
// using supplied offset
var newDate = new Date(utc + (3600000 * offset));
// return time as a string
return "The local time in " + city + " is " + newDate.toLocaleString();
}
// get Bombay time
console.log(calcTime('Bombay', '+5.5'));
// get Singapore time
console.log(calcTime('Singapore', '+8'));
// get London time
console.log(calcTime('London', '+1'));
相关文章:
- 获取用户选择的不带时区的日期
- 分析特定区域设置(而不是时区!)中的日期字符串
- moment.js在两个时区格式的日期之间存在差异
- 获取本地时间的JS日期,日期对象中没有时区详细信息
- Javascript-将时区添加到日期倒计时中
- 使用JavaScript日期的任何时间的时区偏移量
- javascript日期时区问题
- 读取本地时区的日期的Javascript
- 时刻时区.js允许我传递时区缩写并获取转换后的日期/时间
- 转换 JSON 日期,不考虑时区
- 如何使用 JavaScript 更改日期的时区而不更改时间
- 如何将 UTC 日期时间(字符串)转换为访问者时区
- 情节.js为类型设置时区:“日期”
- 在 Jquery 中比较不同的时区日期
- Java 在 Java 中转换毫秒日期对应的时区日期
- 在 JS 中返回干净的无时区日期
- 将UTC中的Epoch转换为当前时区日期
- 将本地时区日期对象转换为UTC时区日期对象的优雅方式
- 显示任意时区日期的Dygraph
- 在 Javascript 中将 ISO 8601 字符串转换为当前时区日期时间对象