How to get numeric value from a prompt box?
本问题已经有最佳答案,请猛点这里访问。
我试图用HTML、jquery和javascript做一些简单的数学计算,所以我想从用户那里得到输入。对于输入,我尝试这样做:
1 2 | var x = prompt("Enter a Value","0"); var y = prompt("Enter a Value","0"); |
但是我不能执行任何类型的计算,因为这些值是字符串。请告诉我如何把它们转换成整数。
parseInt()或parseFloat()是javascript中的函数,可以帮助您分别将值转换为整数或浮点。
语法:1 2 | parseInt(string, radix); parseFloat(string); |
。
- 字符串:要作为数字分析的字符串表达式。
- 基数:(可选,但鼓励使用)要使用的数字系统的基数-一个介于2和36之间的数字。
例子:
1 2 3 4 | var x = prompt("Enter a Value","0"); var y = prompt("Enter a Value","0"); var num1 = parseInt(x); var num2 = parseInt(y); |
在此之后,您可以对它们执行任何您想要的计算。
如果您对数字字符串进行计算(因为JS是弱类型的),javascript会将其"转换"为整数。但是你可以自己用
记住把基数放在
对于整数输入:
1 2 | var x = parseInt(prompt("Enter a Value","0"), 10); var y = parseInt(prompt("Enter a Value","0"), 10); |
号
如果是浮动:
1 2 | var x = parseFloat(prompt("Enter a Value","0")); var y = parseFloat(prompt("Enter a Value","0")); |
1 | var xInt = parseInt(x) |
。
这将返回
在这里阅读关于parseint的更多信息。
您可以使用
1 2 | x = parseInt(x, 10); y = parseInt(y, 10); |
10表示以10为基数的数字。
请参阅此链接以了解为什么需要基数。
工作演示阅读更多信息
1 2 | x = parseInt(x); x = parseInt(x,10); //the radix is 10 (decimal) |
工作演示阅读更多信息
1 | x = parseFloat(x); |
。
您可以直接使用
1 | var x = parseInt(prompt("Enter a Number","1"), 10) |
必须使用parseInt()来转换
例如。
1 | var z = parseInt(x) + parseInt(y); |
。
如果要处理浮点值,请使用parsefloat()。