Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/440.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript tofixed()+;2表现得像固定的+&引用;2“;_Javascript - Fatal编程技术网

Javascript tofixed()+;2表现得像固定的+&引用;2“;

Javascript tofixed()+;2表现得像固定的+&引用;2“;,javascript,Javascript,我试图用任意数字求和固定值,但使用上面的代码,我被要求四舍五入=12。。。。我想知道为什么它不能求和,如何修复它 这是小提琴 谢谢。看来你想四舍五入吗?使用Math.floor而不是toFixed var number = 1.2; var rounded = number.tofixed() + 2 如果您确实想要一个整数,请使用Math.round()JavaScript没有定点数字。固定。等效数字为Math.round: var number = 1.2; var floored = M

我试图用任意数字求和固定值,但使用上面的代码,我被要求四舍五入=12。。。。我想知道为什么它不能求和,如何修复它

这是小提琴


谢谢。

看来你想四舍五入吗?使用
Math.floor
而不是
toFixed

var number = 1.2;
var rounded = number.tofixed() + 2

如果您确实想要一个整数,请使用
Math.round()

JavaScript没有定点数字。固定。等效数字为Math.round:

var number = 1.2;
var floored = Math.floor(number) + 2
Float.toFixed()
返回一个字符串。()字符串+整数将整数转换为字符串,并将两个字符串连接起来。你想要的是:

Math.round(1.2) + 2 // 3

tofixed方法以字符串形式返回答案,因此您可以先添加,然后进行取整

将结果字符串转换为整数:

number = 1.2
number= number+2
rounded = number.toFixed() ;

tofixed方法以字符串形式返回答案,如果要对其进行数字运算,则必须将其转换回数字

$(document).ready(function(){
    number = 1.2
    rounded = parseInt(number.toFixed()) + 2;
    alert(rounded);
})

嗯,
toFixed
返回一个字符串(如中所示)。在加法之前调用该方法是没有意义的。如果要对数字进行四舍五入,请使用
Math.round
(或
Math.floor
Math.ceil
)。您可以将一元数
+
运算符放在
number.toFixed()
前面,将其动态转换回
数字
对象:
var rounded=+number.toFixed()+2。但正如Felix所说,取整/地板/天花板功能可能是您想要的。我也用round()回答,但在阅读了更多关于它的内容后,round将取整2.49到2.5。不确定OP是否需要你读了什么?为我工作:。“返回最接近x且等于数学整数的数值”。@Huangism
Math.round(2.49)
在Chrome控制台中为我提供了
2
,因此我也很好奇你在哪里读到了这篇文章。谢谢你的想法,我没有提到在四舍五入之后我需要+2。这会给你的答案加上2。将int添加到float可能会引起非常小的印象,但无论如何,当您将其舍入时,您将永远不会注意到这一点。如果您想在添加2之前进行四舍五入,Sidnicious的答案可能最适合您。
$(document).ready(function(){
    number = 1.2
    rounded = parseInt(number.toFixed()) + 2;
    alert(rounded);
})
var number = 1.2;
var rounded = parseFloat(number.tofixed()) + 2;