我有下面的代码。我想让它这样,如果price_result等于一个整数,比如10,然后我想加两位小数点后。所以10就是10.00。 如果等于10.6,就是10.60。不知道该怎么做。

price_result = parseFloat(test_var.split('$')[1].slice(0,-1));

当前回答

我有其他的解。

你可以使用round()来代替toFixed()

var twoPlacedFloat = parseFloat(yourString).round(2)

其他回答

要返回一个数字,添加另一层圆括号。保持清洁。

var twoPlacedFloat = parseFloat((10.02745).toFixed(2));

您可以将价格存储为字符串

你可以使用 (字符串)

用于计算。

例子

Number("34.50") == 34.5

also

Number("35.65") == 35.65

如果你对数字函数感到舒服,你可以使用它。

如果你的目标是解析,你的输入可能是一个文字,那么你会期望一个浮点数,而toFixed不会提供这个,所以这里有两个简单的函数来提供这个:

function parseFloat2Decimals(value) {
    return parseFloat(parseFloat(value).toFixed(2));
}

function parseFloat2Decimals(value,decimalPlaces) {
    return parseFloat(parseFloat(value).toFixed(decimalPlaces));
}

你可以使用toFixed()来做到这一点

var twoPlacedFloat = parseFloat(yourString).toFixed(2)
parseFloat(parseFloat(amount).toFixed(2))

你必须解析两次。第一次是将字符串转换为浮点数,然后将其固定为两个小数(但toFixed返回一个字符串),最后再次解析它。