相关疑难解决方法(0)

为什么YYYY-MM-DD!= YYYY/MM/DD

在Chrome中,我们有些奇怪

> new Date("2014-01-01") - new Date("2014/01/01")
< 3600000
Run Code Online (Sandbox Code Playgroud)

这是因为

new Date("2014-01-01")
Wed Jan 01 2014 01:00:00 GMT+0100 (CET)
Run Code Online (Sandbox Code Playgroud)

new Date("2014/01/01")
Wed Jan 01 2014 00:00:00 GMT+0100 (CET)
Run Code Online (Sandbox Code Playgroud)

为什么' - '似乎增加1小时的时间?

javascript

51
推荐指数
2
解决办法
1752
查看次数

JavaScript:哪些浏览器支持使用Date.parse解析ISO-8601日期字符串

我没能在IE8和Safari 5上解析ISO-8601日期"2011-04-26T13:16:50Z",但它适用于Chrome 10,FF4.支持似乎很混杂?

有谁知道哪些浏览器可以解析这种格式的实际状态?我假设IE6,7也会失败.

var d = Date.parse("2011-04-26T13:16:50Z");
Run Code Online (Sandbox Code Playgroud)

javascript safari internet-explorer datetime

48
推荐指数
4
解决办法
4万
查看次数

Safari Javascript Date()NaN问题(yyyy-MM-dd HH:mm:ss)

我的代码在Google Chrome中正常运行,但在Safari中则无法运行.

我发现我需要转换yyyy-MM-dd HH:mm:ssISO 8601,但我没有找到解决方案来做到这一点.


在线测试链接:http://jsfiddle.net/UVgHR/


使用Javascript:

$(document).ready(function() {

    calculateMinutes();
    setInterval(calculateMinutes, 60000);

});

function calculateMinutes() {
    $('.calculateMinutes').each(function () {
        var diff = Math.abs(new Date( $(this).data('timestamp') ) - new Date());
        var minutes = Math.floor((diff/1000)/60);
        $(this).html( minutes + ' min.' );
    });
}
Run Code Online (Sandbox Code Playgroud)

HTML示例:

<span class="calculateMinutes" data-timestamp="2014-02-18 15:00:48">
Run Code Online (Sandbox Code Playgroud)

javascript jquery

17
推荐指数
3
解决办法
3万
查看次数

来自字符串的Firefox new Date()在本地时区构建时间

我正在尝试从字符串创建日期对象.我得到ISO格式的日期,除了像"2012-01-30T16:23:12"的毫秒部分

当我在IE,Chrome和Firefox中运行以下代码时,结果会有所不同(链接到小提琴)

currentDate = "2012-01-30T16:23:12";
var date = new Date(currentDate);
alert(date);
Run Code Online (Sandbox Code Playgroud)

IE和Chrome将字符串视为UTC,但firefox在本地时区考虑.

除了在任何地方检查用户代理之外,有没有通用的方法来解决它?

javascript timezone date

9
推荐指数
1
解决办法
8046
查看次数

Javascript日期解析在Chrome中返回奇怪的结果

我在Chrome浏览器中发现了一些奇怪的Date行为(版本74.0.3729.131(官方内部版本)(64位))。在Chrome开发者控制台中执行了以下javascript:

new Date('1894-01-01T00:00:00+01:00')
// result: Mon Jan 01 1894 00:00:00 GMT+0100 (Central European Standard Time)

new Date('1893-01-01T00:00:00+01:00')
// result: Sat Dec 31 1892 23:53:28 GMT+0053 (Central European Standard Time)
Run Code Online (Sandbox Code Playgroud)

尽管已经提供了有效的ISO8601值,但我已经在不同的浏览器中通过Date ctor阅读了有关非标准日期解析的信息。但这不仅仅是奇怪的o_o

在Firefox(Quantum 66.0.3(64位))中,相同的调用会导致预期的Date对象:

new Date('1894-01-01T00:00:00+01:00')
// result: > Date 1892-12-31T23:00:00.000Z

new Date('1893-01-01T00:00:00+01:00')
// result: > Date 1893-12-31T23:00:00.000Z
Run Code Online (Sandbox Code Playgroud)
  • 这是Chrome中的错误吗?
  • 我的输入是有效的ISO8601,我猜呢?
  • 最重要的问题是,我该如何解决?(希望自己不解析输入字符串)

javascript google-chrome date

9
推荐指数
1
解决办法
156
查看次数

(新日期('2012-12-01')).getMonth()=== 10?

(new Date('2012-12-01')).getMonth()10代替11(getMonth为0索引).我已经在Firefox,Chrome和Node.js上测试过了.为什么会这样?

javascript datetime date

6
推荐指数
1
解决办法
872
查看次数

新的日期()显示Chrome或Firefox中的不同结果

奇怪的是,在不同的浏览器中为新的Date()产生不同的结果.

在Chrome 45.0.2454.101 m中:

new Date(2015,9,1)
Thu Oct 01 2015 00:00:00 GMT+0200 (W. Europe Daylight Time)
Run Code Online (Sandbox Code Playgroud)

在Firefox 40.0.3中(默认检查器/控制台)

new Date(2015,9,1)
Date 2015-09-30T22:00:00.000Z
Run Code Online (Sandbox Code Playgroud)

其他信息
如果我在Firefox中使用FIREBUG扩展控制台进行尝试,那么就像Chrome一样.发生了什么?似乎Firefox没有计算偏移量,实际上它比正确日期落后2小时.我在其他工作站上进行了测试,所有人似乎都有这个"bug".

javascript firefox google-chrome date

5
推荐指数
2
解决办法
3137
查看次数

为什么Chrome V8 JavaScript引擎将“ TG-1”至“ TG-12”识别为有效日期/时间?

我实现了一个CSV解析器,该解析器猜测每一列的类型格式,但是我发现JavaScript Date类认为“ TG-1”是有效的日期/时间。

Chrome支持之前,我没有见过这种晦涩的日期格式吗?我认为这不是一个有效日期,而从其他日期来看,ISO标准我没有看到对此的参考。

Chrome 74表示有效。

Firefox 64表示无效。

let validDate = true;
try{
   d = new Date("TG-1");
   d.toISOString()
}catch(e){
   validDate = false
}
console.log(validDate);
Run Code Online (Sandbox Code Playgroud)

任何后跟-数字1-12的字符串均视为有效:

d = new Date("adsfadgag-12")//valid per V8
Run Code Online (Sandbox Code Playgroud)

javascript datetime iso google-chrome date

5
推荐指数
1
解决办法
82
查看次数