JavaScriptにおける数値表記変換

JavaScriptにおける数値表記変換

JavaScriptにおける数値表記変換メソッド

JavaScriptでは、数値の表記を柔軟に変更するために、以下のメソッドを使用できます。具体例を交えて詳しく解説します。

toString(radix)

toString()メソッドは、数値を指定した基数(2進数、8進数、16進数など)で文字列に変換します。
引数: radix(2~36の整数、デフォルトは10)
用途: 異なる基数での数値表現が必要な場合に便利です。

例:


// 10進数を2進数に変換
let num = 255;
console.log(num.toString(2)); // "11111111"

// 10進数を16進数に変換
console.log(num.toString(16)); // "ff"

// 10進数を8進数に変換
console.log(num.toString(8)); // "377"

// デフォルト(10進数)の場合
console.log(num.toString()); // "255"
    

注意: radixに2~36以外の値を指定するとエラーになります。

toExponential([digit])

toExponential()メソッドは、数値を指数表記(科学的記数法)で表現した文字列を返します。
引数: digit(オプション、指数表記の小数点以下の桁数)
用途: 大きな数値や小さな数値を簡潔に表示する場合に使用します。

例:


// デフォルトの指数表記
let num = 123456;
console.log(num.toExponential()); // "1.23456e+5"

// 小数点以下2桁に指定
console.log(num.toExponential(2)); // "1.23e+5"

// 小数点以下0桁に指定
console.log(num.toExponential(0)); // "1e+5"

// 小さい数値の場合
let smallNum = 0.0000123;
console.log(smallNum.toExponential(3)); // "1.230e-5"
    

toFixed([digit])

toFixed()メソッドは、数値を固定小数点表記で文字列に変換します。
引数: digit(オプション、小数点以下の桁数。デフォルトは0)
用途: 通貨など、小数点以下の桁数が固定されているデータを扱う場合に使用します。

例:


// 小数点以下2桁
let num = 123.456;
console.log(num.toFixed(2)); // "123.46"

// 小数点以下0桁(整数化)
console.log(num.toFixed(0)); // "123"

// 小数点以下6桁
console.log(num.toFixed(6)); // "123.456000"

// 整数の場合でも指定桁数に対応
let intNum = 100;
console.log(intNum.toFixed(2)); // "100.00"
    

注意: digitの範囲は0~100ですが、一般的には0~20が実用的です。

toPrecision([precision])

toPrecision()メソッドは、指定された有効桁数で数値を表現した文字列を返します。
引数: precision(オプション、有効桁数)
用途: 精度が要求される計算結果を扱う場合に便利です。

例:


// 有効桁数4桁
let num = 123.456;
console.log(num.toPrecision(4)); // "123.5"

// 有効桁数2桁
console.log(num.toPrecision(2)); // "1.2e+2"

// 整数の場合
let intNum = 1000;
console.log(intNum.toPrecision(3)); // "1.00e+3"

// 小さい数値の場合
let smallNum = 0.0012345;
console.log(smallNum.toPrecision(3)); // "0.00123"
    

注意: 引数を省略した場合は通常の数値表記が返されます。

まとめ

JavaScriptでは、toString()toExponential()toFixed()toPrecision()を使い分けることで、数値を様々な形式で柔軟に表現できます。それぞれの用途に応じて活用してください。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です