バニラJavaScriptで文字列を数値に変換する方法|parseInt関数の使い方を解説
parseInt関数とは
バニラJavaScriptで文字列を数値に変換する最も基本的な方法が、グローバル関数のparseIntです。この関数は、文字列として渡された値を指定した基数(進数)に基づいて解釈し、整数を返します。
構文
parseInt(string, radix);
各引数の意味は以下の通りです。
string ― 解析対象となる値です。引数が文字列以外の場合は、ToStringメソッドによって自動的に文字列へ変換されます。また、先頭の空白文字は無視されます。
radix ― 文字列の基数(数学的な記数法における底)を表す、2から36までの整数です。
基数を指定してさまざまな進数を整数に変換できる
第2引数のradixを指定することで、2進数から36進数までの任意の数値表現を10進数の整数に変換できます。以下に具体例を示します。
コード例
console.log(parseInt("100", 10)); // 10進数として解析
console.log(parseInt("10", 8)); // 8進数として解析
console.log(parseInt("101", 2)); // 2進数として解析
console.log(parseInt("2FF3", 16)); // 16進数として解析
console.log(parseInt("ZZ", 36)); // 36進数として解析出力結果
100 8 5 12275 1295
実行結果の解説
parseInt("100", 10)→ 10進数の「100」はそのまま 100parseInt("10", 8)→ 8進数の「10」は 8parseInt("101", 2)→ 2進数の「101」は 5parseInt("2FF3", 16)→ 16進数の「2FF3」は 12275parseInt("ZZ", 36)→ 36進数ではZが35を表すため、「ZZ」は 35×36+35 = 1295
注意点
第1引数の先頭に有効な数字が見つからない場合、parseIntはNaN(Not a Number)を返します。そのため、ユーザー入力などを扱う際はisNaN()で結果をチェックすると安全です。また、小数を含む文字列を扱いたい場合はparseFloatを、文字列全体を厳密に数値化したい場合はNumber()コンストラクタの使用も検討しましょう。
-
JavaScriptで文字列を配列に変換する方法|split()メソッドの実践的な使い方
はじめにJavaScriptでは、特定の形式を持つ文字列をオブジェクトの配列へ変換したい場面がよくあります。本記事では、String.prototype.split()メソッドを活用して、構造化された文字列を配列に変換する方法を具体的なコード例とともに解説します。変換対象の文字列まず、次のような特殊な形式の文字列を想定します。const str = Integer,1 Float,2.0\nBoolean,True Integer,6\nFloat,3.66 Boolean,False;この文字列を、split()メソッドを使って以下のような配列構造へ変換することを目標とします。const a
-
JavaScriptで数値と文字数が一致する文字列を検証する方法
問題文字列 str を引数として受け取るJavaScript関数を作成することを考えます。この関数は、文字列内の英字部分を、その直前にある数字に基づいて検証する必要があります。具体的には、文字列を数字で分割し、各数字とそれに続く部分文字列の文字数を比較します。すべての組み合わせが一致していれば、その文字列は有効であるとして true を返し、一箇所でも不一致があれば false を返します。例えば、以下のような文字列を見てみましょう。5hello4from2meこの文字列に対しては、true を返す必要があります。なぜなら、数字で分割すると「hello」「from」「me」という3つの部分文字