编辑:顺便说一句,我不知道为什么这个问题被标记为重复。 原始问题中的答案对我不起作用。,即得出错误的结果和内容。此外,没有一个答案处理phstc的dateFormat函数。如果我错了,请纠正我。顺便说一句,我已经解决了这个问题。请看看我的答案。
我想将UTC日期时间更改为我的浏览器的时区。我以纯JavaScript形式使用phstc's dateFormat。我们假设我使用javascript Date()函数转换2014-06-27 07:11:16
的日期时间。我得到的结果是
Fri Jun 27 2014 07:11:16 GMT+0800 (Malay Peninsula Standard Time)
然后当我使用phstc的toBrowserTimeZone函数时,它仍然返回相同的日期时间。我希望得到像2014-06-27 15:11:16
以下是代码:
var originalDateTime = new Date(`2014-06-27 07:11:16`);
alert(DateFormat.format.toBrowserTimeZone(originalDateTime,"yyyy/MM/dd HH:mm:ss"));
答案 0 :(得分:0)
根据phstc的dateFormat页面中的这句话,
value = String representing date in ISO time (“2013-09-14T23:22:33Z”) or String representing
default JAXB formatting of java.util.Date (“2013-09-14T16:22:33.527-07:00”) or String representing
Unix Timestamp (Sat Sep 14 2013 16:22:33 GMT-0700 (PDT)) or javascript date object.
JS Date对象应该可以工作但不幸的是,它没有。好吧,我通过在调用toBrowserTimeZone()函数之前将日期时间更改为上面描述的其他格式来解决问题。例如,
var originalDateTime = DateFormat.format.date('2014-06-27 07:11:16',"yyyy-MM-ddTHH:mm:ssZ");
var newDateTime = DateFormat.format.toBrowserTimeZone(originalDateTime);