JavaScript 范围错误 – 基数必须是整数

JavaScript 范围错误 – 基数必须是整数

这个JavaScript异常 基数必须是一个大于等于2且不大于36的整数 发生在Number.prototype.toString()BigInt.prototype.toString()方法的基数参数被传入时,该参数不在2到36的范围内。

输出信息:

RangeError: invalid argument (Edge)
RangeError: radix must be an integer at least 2
            and no greater than 36 (Firefox)
RangeError: toString() radix argument must be 
between 2 and 36 (Chrome)
JavaScript

错误类型:

RangeError
JavaScript

错误的原因: 当指定了可选的基数参数的 Number.prototype.toString()BigInt.prototype.toString() 方法,并且该参数的值不在2到36之间时,大于10的基数将使用字母字符作为数字,但字母字符的值不能大于36(因为字母只有26个)。

示例1: 在这个示例中,传递的参数是2,所以没有发生错误。

<body style="text-align: center;"> 
    <h1 style="color: green;"> 
        GeeksforGeeks 
    </h1> 
  
    <p> 
        JavaScript RangeError 
        Radix must be an integer 
    </p> 
  
    <button onclick="Geeks();"> 
        click here 
    </button> 
    <p id="GFG_DOWN"></p> 
  
    <script> 
        var el_down = document.getElementById("GFG_DOWN"); 
        function Geeks() { 
            try { 
                (42).toString(2); 
                el_down.innerHTML =  
                  "'Radix must be an" +  
                  " integer' error has not occurred"; 
            } catch (e) { 
                el_down.innerHTML =  
                  "'Radix must be an" +  
                  " integer' error has occurred"; 
            } 
        } 
    </script> 
</body>
HTML

输出:

JavaScript 范围错误 - 基数必须是整数

示例2: 在这个示例中,传递的参数是 0,所以发生了错误。

<body style="text-align: center;"> 
    <h1 style="color: green;"> 
        GeeksforGeeks 
    </h1> 
  
    <p> 
        JavaScript RangeError 
        Radix must be an integer 
    </p> 
  
    <button onclick="Geeks();"> 
        click here 
    </button> 
  
    <p id="GFG_DOWN"></p> 
  
    <script> 
        var el_down = document.getElementById("GFG_DOWN"); 
        function Geeks() { 
            try { 
                (42).toString(0); 
                el_down.innerHTML =  
                  "'Radix must be an" +  
                  " integer' error has not occurred"; 
            } catch (e) { 
                el_down.innerHTML =  
                  "'Radix must be an" + 
                  " integer' error has occurred"; 
            } 
        } 
    </script> 
</body>
HTML

输出:

JavaScript 范围错误 - 基数必须是整数

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程

登录

注册