javascript中的字符串到数字转换

时间:2013-05-16 07:38:23

标签: javascript

我的功能有以下几行:

payementReceived=data.toJSON().total;
paymentTotal=$("#paymentTotal").html();

console.log(typeof(parseInt(paymentTotal)));                  
console.log(typeof(parseInt(paymentReceived)));
console.log(parseInt(paymentTotal)-parseInt(paymentReceived));

我在控制台中获得以下内容

number
number
NaN

我不明白两者是否都是数字,那么为什么它无法给出正确的减法结果。

4 个答案:

答案 0 :(得分:2)

值为number,因为它们的内容是数字,但并不意味着该数字有效。

typeof NaN === 'number'

如果您从减法中获得NaN,则您的一个或两个输入值都是无效数字。

答案 1 :(得分:0)

问题是因为未确定的变量使用“付款已收到”,如果您确定结果是一个数字,您可以随时使用 parseInt

console.log(parseInt(paymentTotal)-parseInt(payementReceived));

答案 2 :(得分:0)

一个有趣的想法:

if (typeof n === "number" && n+1 !== n) {
    // this is a valid number
}

无效+ 1仍然无效,因此可以检查无效数字。

答案 3 :(得分:-1)

尝试以下代码

的console.log(号码(paymentTotal)个(payementReceived));