数学整数格式
math.round number format
我在我的网站上使用了一个脚本来制作转换权重。Math.round 函数工作正常,但我需要将"结果"格式化为如下所示:例如 1.000,000。今天,这个数字显示为1000.000。有谁知道该怎么做?我尝试了一些number_format但不能。按照以下代码操作:
<script>
function convert() {
var amount = document.getElementById("amount").value,
measurement_from = document.getElementById("measurement_from"),
measurement_from_name = measurement_from.options[measurement_from.selectedIndex].text,
measurement_from_type = measurement_from.options[measurement_from.selectedIndex].getAttribute('data-type'),
measurement_from_value = measurement_from.options[measurement_from.selectedIndex].getAttribute('data-value'),
measurement_to = document.getElementById("measurement_to"),
measurement_to_name = measurement_to.options[measurement_to.selectedIndex].text,
measurement_to_type = measurement_to.options[measurement_to.selectedIndex].getAttribute('data-type'),
measurement_to_value = measurement_to.options[measurement_to.selectedIndex].getAttribute('data-value'),
ingredient = document.getElementById("ingredient"),
ingredient_name = ingredient.options[ingredient.selectedIndex].text,
ingredient_density = ingredient.options[ingredient.selectedIndex].getAttribute('data-density'),
total_volume,
result,
result_text,
result_div = document.getElementById("result");
if (measurement_from_type == 'weight')
total_volume = amount * measurement_from_value / ingredient_density;
else
total_volume = amount * measurement_from_value;
if (measurement_to_type == 'weight')
result = total_volume / measurement_to_value * ingredient_density;
else
result = total_volume / measurement_to_value;
result = Math.round(result * 1000) / 1000;
result_text = result + ' ' + measurement_to_name ;
while( result_div.firstChild ) {
result_div.removeChild( result_div.firstChild );
}
result_div.appendChild( document.createTextNode(result_text) );
}
</script>
谢谢!
Use toLocaleString。例:
var number = 35000000;
console.log(number.toLocaleString('de-DE', { minimumFractionDigits: 2 }));
// outputs "35.000.000,00"
您可以通过更改"de-DE"来选择您喜欢的本地化。在您的代码上:
result = Math.round(result * 1000) / 1000;
// are you sure you don't mean to include / 1000 inside the round?
result = result.toLocaleString('de-DE', { minimumFractionDigits: 2 });
...
如果你想要"大陆风格"的数字,比如1.234.567,89,请查看php语言环境。
相关文章:
- 如何使用javascript或html下载PDF格式的填写表单
- 货币代码为欧元-金额的格式不应包含小数
- Json数据包含日期和时间格式
- Javascript日期格式类似于ISO,但本地
- 如何使用js将SNAPSHOT内部版本号转换为3位数的整数
- 检测个位数整数时正在转换毫秒
- 更改angularjs中的日期-时间格式
- 限制javascript变量的最小/最大整数
- 如何在 Javascript 中将变量的值从字符串转换为整数
- 将日期时间从json转换为可读格式
- NodeJS日期格式不起作用
- 错误:格式为整数的 javascript 键无效
- 数学整数格式
- 内存中的整数格式是什么
- 选择格式为 2 位数字的值整数
- 将 twitter-cldr-js 格式的数字解析回整数或浮点数
- 在jQuery中将整数格式化为字符串数字
- 将美国数字格式格式化为整数
- 在整个文档中设置整数千位分隔符的格式
- 将日期从02/Jan/2013格式化为整数yyyymmdd