JavaScriptにおける文字列を数値に変換する方法
JavaScriptでは、文字列を数値に変換するための方法が複数存在します。それぞれの方法の特徴や注意点を理解することで、状況に応じて適切な方法を選択できます。以下に、主要な方法と具体的な例を詳しく解説します。
parseIntを使用する方法
parseInt()関数は、文字列を整数に変換します。文字列の先頭が数値として認識できる場合に有効です。
基本的な使用例
const value = "42";
const result = parseInt(value, 10);
console.log(result); // 42
基数を指定する
parseIntでは、第2引数で基数(進数)を指定できます。
const binaryValue = "1010";
const decimalResult = parseInt(binaryValue, 10); // 10進数として解釈
console.log(decimalResult); // 1010
const binaryResult = parseInt(binaryValue, 2); // 2進数として解釈
console.log(binaryResult); // 10
注意点
- 文字列に数値以外の文字が含まれている場合、最初に数値として解釈できる部分だけが変換されます。
const value = "42px";
const result = parseInt(value, 10);
console.log(result); // 42
parseFloatを使用する方法
parseFloat()関数は、文字列を浮動小数点数に変換します。
基本的な使用例
const value = "3.14";
const result = parseFloat(value);
console.log(result); // 3.14
注意点
parseFloatもparseIntと同様に、先頭から数値として解釈できる部分のみを変換します。
const value = "3.14abc";
const result = parseFloat(value);
console.log(result); // 3.14
Numberコンストラクターを使用する方法
Number()コンストラクターは、文字列を数値(整数または浮動小数点数)に変換します。
基本的な使用例
const value = "42";
const result = Number(value);
console.log(result); // 42
const value = "3.14";
const result = Number(value);
console.log(result); // 3.14
注意点
- 文字列が完全に数値として解釈できない場合、
NaN(Not-a-Number)を返します。
const value = "abc";
const result = Number(value);
console.log(result); // NaN
一元演算子を使用する方法
一元演算子(+)を使用して文字列を数値に変換することもできます。
基本的な使用例
const value = "42";
const result = +value;
console.log(result); // 42
const value = "3.14";
const result = +value;
console.log(result); // 3.14
注意点
Number()と同じく、数値として解釈できない場合はNaNを返します。
parseIntとparseFloatの違い
parseIntは整数に特化しており、parseFloatは浮動小数点数を含む文字列を変換できます。
比較例
const value = "42.99";
console.log(parseInt(value, 10)); // 42
console.log(parseFloat(value)); // 42.99
まとめ
JavaScriptでは、文字列を数値に変換するさまざまな方法が提供されています。それぞれの特性を理解し、用途に応じて使い分けることが重要です。
parseInt: 整数変換に適しているparseFloat: 小数点を含む数値に対応Number: より厳密な変換が可能+: 簡易的な変換に便利