Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/471.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 为什么新日期没有';不能在Firefox浏览器中工作_Javascript - Fatal编程技术网

Javascript 为什么新日期没有';不能在Firefox浏览器中工作

Javascript 为什么新日期没有';不能在Firefox浏览器中工作,javascript,Javascript,我想检查给定日期和现在之间的差异。我想完全使用下面的代码,它在chrome中运行良好。但控制台日志在Firefox中显示了其他内容 为什么??如何解决这个问题 //在下面输入您的自定义日期 施工日期=新日期('2020-6-23 14:22:00 GMT+0430');//在这里设定结束时间! const dif=(date.getTime()/1000)-(new date().getTime())/1000); const end=Math.max(0,dif); 控制台日志(日期、dif

我想检查给定日期和现在之间的差异。我想完全使用下面的代码,它在chrome中运行良好。但控制台日志在Firefox中显示了其他内容

为什么??如何解决这个问题

//在下面输入您的自定义日期
施工日期=新日期('2020-6-23 14:22:00 GMT+0430');//在这里设定结束时间!
const dif=(date.getTime()/1000)-(new date().getTime())/1000);
const end=Math.max(0,dif);
控制台日志(日期、dif、结束)“GMT”不属于该字符串。如果要确保正确解析该字符串,则该字符串应该是兼容的

要使其与ISO标准保持一致,请执行以下操作:

  • 删除“GMT”及其前面的空格
  • 用“T”分隔时间部分和日期部分
  • 用两位数写出月份
  • 在日期、时间和时区中使用标点符号(连字符、冒号),或者根本不使用任何标点符号。这个条件在我所接触到的ISO8601规范中并不十分清楚,但很明显,有一个更严格的定义,它排除了仅在字符串的一部分使用标点符号。简而言之,在
    +04:30
    中添加冒号时,一定要对齐
const date=新日期('2020-06-23T14:22:00+04:30');
//现在也在伊朗时区输出:

console.log(date.tolocalstring(“en”{时区:“伊朗”}))我测试过,但它不起作用,就像你说的,但我认为问题在于时区,如果在创建日期时从字符串中删除if,那么Firefox不喜欢将字符串传递到具有时区的日期。在下面的代码中相应地更改您的时区。还要注意日期/时间常数日期中的T=新日期('2020-6-23T14:22:00');date.Tolocalesting('en-US',{timeZone:'America/New_York')我想要德黑兰格林威治时间。这就是为什么我提到您需要修改我的代码,但相应地更改时区。问题再次出现:)评论不用于扩展讨论;这段对话已经结束。