🪬

JavaScriptにおける小数点の四捨五入 / 切り上げ / 切り捨て / 削除

2021/05/10に公開

小数点の操作は Math オブジェクトを使用します。

https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/Math

四捨五入

Math.round(数値) : 引数として与えた値の小数点以下を四捨五入した整数を返します。

  • 引数が null の場合は 0 を返す
  • 引数が数値ではなかった場合は数値に変換して処理を実行する
  • 変換ができない場合、または非数 ( NaN ) だった場合は NaN を返す
Math.round(2);
>> 2
Math.round(2.4);
>> 2
Math.round(2.5);
>> 3
Math.round(2.6);
>> 3
Math.round(-2);
>> -2
Math.round(-2.4);
>> -2
Math.round(-2.5);
>> -2
Math.round(-2.6);
>> -3
Math.round('2.4');
>> 2
Math.round([2.4]);
>> 2
Math.round(null);
>> 0
Math.round('abc');
>> NaN
Math.round(undefined);
>> NaN
Math.round(NaN);
>> NaN

切り上げ

Math.ceil(数値) : 引数として与えた値の小数点以下を切り上げた整数を返します。

  • 引数が null の場合は 0 を返す
  • 引数が数値ではなかった場合は数値に変換して処理を実行する
  • 変換ができない場合、または非数 ( NaN ) だった場合は NaN を返す
Math.ceil(2);
>> 2
Math.ceil(2.4);
>> 3
Math.ceil(2.5);
>> 3
Math.ceil(2.6);
>> 3
Math.ceil(-2);
>> -2
Math.ceil(-2.4);
>> -2
Math.ceil(-2.5);
>> -2
Math.ceil(-2.6);
>> -2
Math.ceil('2.6');
>> 3
Math.ceil([2.6]);
>> 3
Math.ceil(null);
>> 0
Math.ceil('abc');
>> NaN
Math.ceil(undefined);
>> NaN
Math.ceil(NaN);
>> NaN

切り捨て

Math.floor(数値) : 引数として与えた値の小数点以下を切り下げた整数を返します。

  • 引数が null の場合は 0 を返す
  • 引数が数値ではなかった場合は数値に変換して処理を実行する
  • 変換ができない場合、または非数 ( NaN ) だった場合は NaN を返す
Math.floor(2);
>> 2
Math.floor(2.4);
>> 2
Math.floor(2.5);
>> 2
Math.floor(2.6);
>> 2
Math.floor(-2);
>> -2
Math.floor(-2.4);
>> -3
Math.floor(-2.5);
>> -3
Math.floor(-2.6);
>> -3
Math.floor('2.6');
>> 2
Math.floor([2.6]);
>> 2
Math.floor(null);
>> 0
Math.floor('abc');
>> NaN
Math.floor(undefined);
>> NaN
Math.floor(NaN);
>> NaN

削除

Math.trunc(数値) : 引数として与えた値の小数点以下を削除した整数を返します。

  • 引数が null の場合は 0 を返す
  • 引数が数値ではなかった場合は数値に変換して処理を実行する
  • 変換ができない場合、または非数 ( NaN ) だった場合は NaN を返す
Math.trunc(2);
>> 2
Math.trunc(2.4);
>> 2
Math.trunc(2.5);
>> 2
Math.trunc(2);
>> 2
Math.trunc(2.1);
>> 2
Math.trunc(2.88);
>> 2
Math.trunc(-2);
>> -2
Math.trunc(-2.1);
>> -2
Math.trunc(-2.88);
>> -2
Math.trunc('2.1');
>> 2
Math.trunc([2.88]);
>> 2
Math.trunc(null);
>> 0
Math.trunc('abc');
>> NaN
Math.trunc(undefined);
>> NaN
Math.trunc(NaN);
>> NaN

Discussion