使用JavaScript获取IST时间戳

时间:2018-01-03 17:22:18

标签: javascript date datetime

我希望将以下时间戳作为输出:

       Wed Jan 03 2018 22:35:29 GMT+0530 (IST)

当我尝试在浏览器中使用以下代码时,

      var d = new Date();

我得到了理想的结果。但每当我在我的Webstorm中运行代码片段并控制结果时,我得到的结果为

     2018-01-03T17:11:53.093Z

为什么这种格式不同?为什么浏览器中生成的结果不能在我的IDE控制台中重现?如何以

的确切格式生成结果
 Wed Jan 03 2018 22:35:29 GMT+0530 (IST)

1 个答案:

答案 0 :(得分:0)

我认为这是JavaScript引擎在IDE内部构建的内容。无论如何,console.log日期对象的原始数据一般不直接使用,这就是为什么不同引擎可能输出它的原因存在差异。

IDE的JavaScript引擎肯定会输出日期对象,类似于在浏览器中使用DateObject.toISOString()输出日期对象时产生类似2018-01-03T17:55:37.048Z

的内容

要解决此问题,您可以告诉它输出不同的内容,例如

var d = new Date();
console.log( d.toString() );

我在Node上尝试过,似乎工作得很好,IDE可能正在使用Node,因此它也可以正常工作。

或使用momentjs或类似的库来规范化输出时间对象的方式

当您以

格式获取输出时
Wed Jan 03 2018 22:35:29 GMT+0530 (IST)

我得到它

Wed Jan 03 2018 23:01:41 GMT+0530 (India Standard Time)

没有太大的不同,您仍然可以看到IST显示方式的差异。在输出原始时间对象时,浏览器也可能会考虑操作系统的设置。