开发者社区> 问答> 正文

请问如何在weblogic环境下JS怎么将CST时间转换成UTC时间,有遇到过的朋友没?

我现在在本地tomcat环境下可以是将CST时间转换成UTC时间,如:
var cstDate=CSTDate;(这是一个变量值,其中值为:Sun Mar 31 00:00:00 CST 2013,但这个地方不知道是String型还是Date型,感觉比较困惑)
var date=new Date(cstDate);这样在tomcat下是可以转换的,显示结果为:Sun Mar 31 14:00:00 UTC+0800 2013;
但是当我把程序部署到weblogic后,就不能转换了,显示为:NAN;
顺便测试了下,在weblogic下,var date=new Date("Sun Mar 31 00:00:00 CST 2013");可以转换,但当我换成那个变量CSTDate时就不能转换了,所以前面应该不是String型;但也具体不知道是什么Date型,还有CST时间不能直接使用getMonth()方法吧,我最终的目的是得到这个时间的月份,求大神解答,谢谢!

展开
收起
a123456678 2016-03-10 09:19:02 2389 0
1 条回答
写回答
取消 提交回答
  • 这个地方对上面的问题进行补充下:原本在本地显示的是CST时间但到weblogic上就变成GMT时间了,就是var date=new Date(cstDate);中的CSTDate,这个可能与weblogic对时间的设置有关,所以在weblogic上就变成var date=new Date(GMTDate);经测试,这种转换在W3C验证中是支持的,即weblogic不支持这种转换,同时也不支持对CST时间的转换;我个人认为这可能是weblogic对日期转换的一个bug,要获取从java中传递到前台日期的月份,首先在java中把该日期做为字符串格式化好,即yyyy-MM-dd等格式,然后放到session等jsp内置对象中,我采用的是在访问jsp时做这步操作,在jsp中添加java代码,然后在前台js里面从jsp内置对象里面直接取出来,但取出来的是字符串,你会想是不是又可以把它转换成Date型呢,然后用getMonth()+1方法获得月份,答案是这样是不可取的,会出现和前面一样的问题,也就是又绕回去了,所以我们只有选择对这个字符串格式的字符串进行截取来获得我们想要的年份和月份。

    2019-07-17 18:56:47
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
编程语言如何演化—— 以 JS 的 private 为例 立即下载
编程语言如何演化-以JS的private为例 立即下载
JS 语言在引擎级别的执行过程 立即下载