为什么这段代码没有正确地舍入数字

时间:2014-01-10 17:31:29

标签: javascript

var money = prompt("Enter an amount of money");
money = parseFloat(money);
var months = prompt("Enter how long you will be investing for in months");
months = parseInt(months);
months = Math.round(months);
var interest = prompt("Enter an interest rate you would like to test your investment at");
interest = parseFloat(interest);
console.log(months);

为什么这段代码无论如何都会在几个月内完成?我有什么不同的做法?

2 个答案:

答案 0 :(得分:2)

函数parseInt将数字转换为整数,不支持小数(小数)。

months = parseInt(months);
months = Math.round(months);

请改为使用parseFloat

months = parseFloat(months);
months = Math.round(months);

答案 1 :(得分:0)

为什么你需要首先对int进行舍入?它应该总是一个整数,对吧?

尽管如此,在没有指定基数的情况下也不要使用parseInt,在你的情况下应该是10。

months = parseInt(months, 10);