您的位置:首页 > 编程语言 > Java开发

java使用js引擎时,关于时间的问题getTime()获取为NAN的问题

2016-11-24 10:44 363 查看
在java中使用js引擎时,想要去获取两个时间的相差的天数,查找网上的办法:

var beginMonth = parseInt(beginTime.substring(6,8),10);//2016-05-17 18:51:33
var beginYear = parseInt(beginTime.substring(1,5),10);
var beginDate = parseInt(beginTime.substring(9,11),10);
oDate2 = new Date(beginMonth + '-' + beginDate + '-' + beginYear );

var endMonth = parseInt(endTime.substring(6,8),10);//2016-05-17 18:51:33
var endYear = parseInt(endTime.substring(1,5),10);
var endDate = parseInt(endTime.substring(9,11),10);
oDate3 = new Date(endMonth + '-' + endDate + '-' + endYear );

iDays = parseInt(Math.abs(oDate3 - oDate2) / 1000 / 60 / 60 /24);

然后测试的时候,获取到idays的值为NAN,但是,这块代码直接在html中去执行,可以获取到真正的idays的值,

经过最后不断测试,把new Date方法修改为new Date(endYear,endMonth,endDate,0,0,0);就可以正确获取到值

原因可能是java中的js引擎要求时间的格式比较严格
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: