如何将输入字段值视为一个数字?

时间:2013-12-06 12:59:04

标签: javascript html

我有这个非常基本的计算器:

<html>
    <body>
        <form name="form">
            <input type="text" name="num1" />
            <input type="text" name="num2" />
            <input type="text" name="res" />
            <input type="button" value="+" onclick="form.res.value = form.num1.value + form.num2.value" />
        </form>
    </body>
</html>

但它将form.num1.valueform.num2.value视为字符串,因此结果是这些值的串联而不是添加。

如何将它们视为数字?

4 个答案:

答案 0 :(得分:5)

将每个值包裹在parseInt(value, 10)parseFloat(value)

答案 1 :(得分:1)

尝试将它们转换为如下数字:

onclick="Numberform.res.value = Number(form.num1.value) + Number(form.num2.value)"

答案 2 :(得分:1)

最短的方式是unary plus operator,它转换为数字:

+form.num1.value + +form.num2.value

注意:对于像“10土豆”这样的混合输入,它会返回NaN。为避免这种情况,您可以使用parseIntparseFloat

答案 3 :(得分:1)

使用+运算符或parseFloat将其转换为数字。