<script >
var a1 = parseInt(prompt("enter first number."));
var a2 = parseInt(prompt("enter second number."));
var od1 =a1+a2;
document.write( od1 );
</script>
如果我尝试输入1.5和1.5程序将打印2!
(1.5 + 1.5显然是3,而不是2)
那为什么我不能输入十进制数?
我需要添加什么才能输入十进制数?
答案 0 :(得分:4)
为此你必须使用parseFloat
,
var a1 = parseFloat(prompt("enter first number."));
var a2 = parseFloat(prompt("enter second number."));
var od1 =a1+a2;
document.write(od1);
parseInt
将忽略小数点,而parseFloat
将在从字符串到数字的转换过程中考虑小数点。
答案 1 :(得分:2)
使用parseFloat而不是parseInt。
整数没有小数位。
答案 2 :(得分:0)
您不应使用parseInt
或parseFloat
将字符串数字转换为相同基数的数字。他们对初学者来说非常沮丧。 Number
或一元加号通常都足够好。
var a1 = Number(prompt("enter first number."));
var a2 = Number(prompt("enter second number."));
//or
var a1 = +prompt("enter first number.");
var a2 = +prompt("enter second number.");