温度から変換する関数は以下に書かれています
function tryConvert(temperature, convert /*callback*/) {
const input = parseFloat(temperature);
if (Number.isNaN(input)) {
return '';
}
const output = convert(input);
const rounded = Math.round(output * 1000) / 1000;
return rounded.toString();
}
私の質問はこの行です:
const rounded = Math.round(output * 1000) / 1000;
なぜ1000倍する必要があるのですか?また、結果を1000で割る?
回答 2 件
output
を切り上げることです 3桁まで:例:
const rounded = Math.round(1.23456 * 1000) / 1000; // = 1.235 console.log(rounded);
1000で乗算すると、小数点が3桁右に移動します。 5.333333 => 5333.333
整数に整数を丸めます。 (小数点以下はゼロのみ) 5333.333 => 5333.000
その後、1000で除算すると、小数点が開始位置に戻ります。 5333.000 => 5.333000
その結果、数値は小数点以下3桁に丸められます。 5.333333 => 5.333000