2012年6月28日木曜日

JavaScriptで小数の表示

暇つぶしにJavaScriptでストップウォッチを作っていたのだが、0.1秒とか11.5秒とかはそのまま表示されるのに、10.0秒みたく小数点以下が全部0だと、それらが切り捨てられて10と表示されてしまう。10.0と表示したい時は以下のメソッドを使えばおk

var val = 10;
val.toFixed(1);  // 10.0

toFixed()は小数点表示の文字列値に変換するメソッドです。引数は、小数点以下の桁数を表します。

ちなみに、JavaScriptの数値型(Numberオブジェクト)は64ビット浮動小数点数です。なので数値計算は(たとえ整数のつもりでも)内部では全て実数として扱われます。小数点以下が全て0のときに文字列にすると小数点以下が切り捨てられて、整数に見えるとのこと。ちなみに、ビット演算の時は内部では32ビット整数で計算されるみたい。

参考サイト:
javascript - には整数はない

0 件のコメント:

コメントを投稿