JavaScript 根据浏览器时区更改我的日期
JavaScript Changes My Date Based on Browser Time Zone
我正在尝试在JavaScript中创建一个Date
对象,传递如下字符串:
2014-11-30T00:00:00.0000000
但是,Date
对象的值为:
2014年11月29日星期六 17:00:00 GMT-0700 (山区标准时间)
当我想要 11/29 时,它将其更改为 11/30。有什么方法可以确定日期 2014-11-30,无论浏览器位于哪个时区?
注意:一种可能的解决方法是使用 Date(year, month, day)
构造函数;但是,我正在 JSON 字符串中构造数据,这似乎不支持这一点。
编辑:
实际上,我只是做了一个测试并使用Date(2015, 1, 1)
创建了一个日期,它给了我:
2015年2月2日星期一 00:00:00 GMT-0700(山区标准时间)
所以我甚至不能以这种方式创建一个日期,让它成为我想要的日期。我不明白为什么这如此困难。
您可以使用
Date.UTC
UTC() 方法在两个方面与 Date 构造函数不同。
- Date.UTC() 使用通用时间而不是本地时间。
- Date.UTC() 以数字形式返回时间值,而不是创建日期 对象。
编辑 - 为什么SO坚持使链接如此难以发现? 在那里,这是一个指向文档的链接,以防万一不明显。
编辑 2 - 我想我误解了。 试试这个:
var d = new Date('2014-11-30T00:00:00.0000000');
var utc = new Date(
d.getUTCFullYear(),
d.getUTCMonth(),
d.getUTCDate(),
d.getUTCHours(),
d.getUTCMinutes(),
d.getUTCSeconds()
);
alert('d: ' + d + "'n" + 'utc: ' + utc);
相关文章:
- 无法将我的日期日/月/年格式化为月/日/年
- 图形未呈现我的日期数据
- 谁能解释为什么我的日期函数通过 JS 日期对象给了我错误的转换
- 为什么我的日期比较函数会抛出错误
- JavaScript 根据浏览器时区更改我的日期
- 如何在我的日期选择器上只允许选择星期日
- 为什么Javascript正在更改我的日期
- 为什么我的日期输入字段在AngularJS中抛出类型错误
- 只需转换我的日期格式
- 我想根据需要设置图像大小,这是我的日期选择器脚本
- toDateString()递减我的日期
- 为什么创建谷歌图表数据表会误解我的日期
- 为什么 JSON.stringify 搞砸了我的日期时间对象
- 以特定格式显示我的日期
- 可以'我的日期选择器似乎不适合显示在某些页面上
- 当注意力不集中时,关掉我的日期选择器
- 如何动态设置一个有限的范围为我的日期通过jQuery
- 我如何把我的日期正确地从浏览器传输到服务器
- 我的日期表不太好用
- 我怎样才能从我的日期选择器中得到日、月、年呢?