日期:2014-05-20  浏览次数:21067 次

JS中出现NaN问题怎么解决?
我在后台写了一个js比较两个时间的差可是出现了alert(time)是NaN怎么解决 各位大侠给帮忙解决下 谢谢:下下面是我的代码
if(gzlbh.equals("125")){

pw.println("<script type='text/javascript'>" +
"function dateday()"
+"{var name1=document.getElementByI('jieyueTime').value;"
+"var name2=document.getElementById('returnTime').value;"
+" var date = Date.parse(name1.replace(/-/g, '/')); " 
+"var dates = Date.parse(name2.replace(/-/g, '/')); "

+"var s1 = new Date(date);"
+"var s2 = new Date(dates);"
+"var day=(s2.getTime-s2.getTime);"
+"var time=parseInt(day/(60 * 1000 * 60 * 24));"
+"alert(day);"
+"alert(time);"
+"}</script>");

}

------解决方案--------------------
NaN出现,看你的代码是因为需要进行计算。你检查一下,计算的变量是不是一个类型的就可以了
你肯定是类型不统一,进行计算,最终出现NaN
------解决方案--------------------
你的alert(day)我想也一定是NaN

------解决方案--------------------
'jieyueTime' 'returnTime'都是什么值,是非日期型的肯定都是NaN
------解决方案--------------------
if(time) {
alert(time);
}
------解决方案--------------------
var name1=document.getElementByI('jieyueTime').value
。。。好像少了个“d”
------解决方案--------------------
探讨
var name1=document.getElementByI('jieyueTime').value
。。。好像少了个“d”