javascript エラー「Uncaught RangeError: toString() radix argument must be between 2 and 36」の解決方法

javascript エラー「Uncaught RangeError: toString() radix argument must be between 2 and 36」の解決方法

javascriptで、エラー「Uncaught RangeError: toString() radix argument must be between 2 and 36」が発生した場合の原因と解決方法を記述してます。「toString()」に指定できる進数の基数の範囲は「2~16」決まっているため、それ以外の範囲を指定した場合に発生します。

環境

  • OS windows11 pro 64bit
  • Apache 2.4.43
  • ブラウザ chrome 101.0.4951.54

エラー内容

以下のコードを実行時に発生。

const foo = 10;

console.log(foo.toString(1));

エラーメッセージ

Uncaught RangeError: toString() radix argument must be between 2 and 36
    at Number.toString (<anonymous>)

画像

firefox(バージョン97)では、下記のエラーとなります。

Uncaught RangeError: radix must be an integer at least 2 and no greater than 36

画像

原因

「toString()」に指定できる基数は「2~36」までのため

解決方法

範囲内の値を指定する

const foo = 10;

console.log(foo.toString(2)); // 2進数
console.log(foo.toString(16)); // 16進数

実行結果