wlbk.net
当前位置:首页 >> js中出现nAn >>

js中出现nAn

可能原因: 1、操作的两个数,类型不一致 2、有一个值为NaN,计算後为NaN

首先要了解 NaN 是什么:Not a number ( 非数值 ) 当语句中需要判断一个变量值是否为数值时,可以用isNaN()方法,得到true则表示不是数值。 var val = "abc";alert(isNaN(val));//结果为:true虽然语句中碰到产生NaN错误还会继续往下一句解析执...

a=parseInt(a)+parseInt(b); 试一下这样行不行。。

这个写错了 var t = parseInt($(".t").val());// 修改为parseInt($(".T").val());原来的错误写法 实际上是对parseInt(undeifined)来运行 得到了NaN 然后NaN的任何计算结果都是NaN

因为NaN的数据类型就是数字,就是number;他是一个特殊的number。因为在js中数据类型之间都是可以相互转化的,这方便了其他数据类型转化为number(非数字转化为number类型便是NaN)

0不可以做除数。 NaN值是JS在执行数字运算或者数字类型转换时失败的结果值,还是属于数字类型。

total=total+interp(x*f,y*f)*a;中调用了interp,interp定义如下: function interp(a,b,x){ return a*(1-x)+b*x; } 这个函数有三个参数,其中x没有传值,值为undefined,x参与到了运算,返回结果为NaN。

NaN 就是 Not a Number 的意思 求时间差可以这样 function DateDiff(sDate1,sDate2){ //sDate1和sDate2是年-月-日格式 var arrDate,objDate1,objDate2,intDays; arrDate=sDate1.split("-"); objDate1=new Date(arrDate[1]+'-'+arrDate[2]+'-'+ar...

假入我们把{}的toString方法修改一下: var obj = {};obj.toString = function(){ return 123;};isNaN(obj); //这里的结果就是false了 var obj = {};obj.valueOf = function(){ console.log('call valueOf'); return 321; http://r.yuzhua.com你...

count = setday - today;试一下改成 count = parseFloat(setday) - parseFloat(today); 如果还有问题,可以试一下,在count = setday - today;加上一句alert(setday+";"+today);定位一下是不是这两个变量出了问题

网站首页 | 网站地图
All rights reserved Powered by www.wlbk.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com