初心者でも安心!JavaScriptで数値を文字列に変換する3つの方法
JavaScriptで数値を文字列に変換する方法
String() 関数を使う
最も簡単で一般的な方法は、String()
関数を使うことです。これは、任意の値を文字列に変換するグローバル関数です。
const num = 123;
const str1 = String(num);
console.log(str1); // 出力: "123"
Number.toString() メソッドを使う
もう1つの方法は、Number
オブジェクトの toString()
メソッドを使うことです。これは、Number
インスタンスを文字列に変換するメソッドです。
const num = 123;
const str2 = num.toString();
console.log(str2); // 出力: "123"
基本的には、どちらの方法を使っても問題ありません。パフォーマンス面では、String()
関数の方が若干速いというベンチマーク結果もありますが、実際の使用場面ではほとんど差が出ないでしょう。
以下のような場合は、Number.toString()
メソッドを使う方が適している場合があります。
-
数値を特定の基数に変換したい場合
toString()
メソッドには、基数引数を受け取るオプションがあります。例えば、10進数を16進数に変換するには次のようにします。const num = 255; const str3 = num.toString(16); console.log(str3); // 出力: "ff"
-
オブジェクトかどうかを判定したい場合
toString()
メソッドは、オブジェクトかどうかを判定する際に役立ちます。const obj = {}; console.log(typeof obj); // 出力: "object" console.log(obj.toString()); // 出力: "[object Object]"
上記以外にも、数値を文字列に変換する方法はいくつかあります。
-
テンプレートリテラルを使う テンプレートリテラルを使って、数値を直接文字列に埋め込むことができます。
const num = 123; const str4 = `文字列${num}`; console.log(str4); // 出力: "文字列123"
-
toFixed() メソッドを使う 小数点以下の桁数を固定して文字列に変換したい場合は、
toFixed()
メソッドを使うことができます。const num = 123.456; const str5 = num.toFixed(2); console.log(str5); // 出力: "123.45"
JavaScriptで数値を文字列に変換するには、主に String()
関数と Number.toString()
メソッドの2つの方法があります。どちらを使うべきかは、状況によって判断しましょう。
上記以外にも、様々な方法があるので、目的に合った方法を選択してください。
// String() 関数を使う
const num1 = 123;
const str1 = String(num1);
console.log(str1); // 出力: "123"
// Number.toString() メソッドを使う
const num2 = 456;
const str2 = num2.toString();
console.log(str2); // 出力: "456"
// テンプレートリテラルを使う
const num3 = 789;
const str3 = `数値は ${num3} です`;
console.log(str3); // 出力: "数値は 789 です"
// toFixed() メソッドを使う
const num4 = 10.1234;
const str4 = num4.toFixed(2);
console.log(str4); // 出力: "10.12"
// 特定の基数に変換する
const num5 = 255;
const str5 = num5.toString(16);
console.log(str5); // 出力: "ff"
このコードを実行すると、以下の出力が得られます。
123
456
数値は 789 です
10.12
ff
このサンプルコードは、あくまでも一例です。状況に合わせて、必要な部分を変更して使用してください。
JavaScriptで数値を文字列に変換するその他の方法
文字列を数値に変換する parseInt()
関数を使って、数値を文字列に変換することもできます。ただし、この方法は、文字列が数値に変換できる形式である場合にのみ有効です。
const str = "123";
const num = parseInt(str);
console.log(num); // 出力: 123
小数点を含む文字列を数値に変換するには、parseFloat()
関数を使うことができます。
const str = "123.45";
const num = parseFloat(str);
console.log(num); // 出力: 123.45
ビット論理演算子を使って、数値を文字列に変換することもできます。この方法は、高度なテクニックですが、パフォーマンスが優れている場合があります。
const num = 123;
const str = (num >>> 0).toString(36);
console.log(str); // 出力: "7b"
ライブラリを使う
数値をフォーマットしたり、特定の形式に変換したりする必要がある場合は、ライブラリを使用することができます。
JavaScriptで数値を文字列に変換するには、様々な方法があります。状況に合わせて、適切な方法を選択してください。
javascript string performance