From f957fe6e0a05b9c1def393a9b64225012c75d5bf Mon Sep 17 00:00:00 2001 From: Masahiro FUJIMOTO Date: Mon, 5 Apr 2021 01:43:03 +0900 Subject: Bad_radix を更新 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 2021/02/20 の英語版に同期 --- .../reference/errors/bad_radix/index.html | 39 ++++++++++++---------- 1 file changed, 22 insertions(+), 17 deletions(-) (limited to 'files/ja/web') diff --git a/files/ja/web/javascript/reference/errors/bad_radix/index.html b/files/ja/web/javascript/reference/errors/bad_radix/index.html index dfcf5f1591..f7ac6e26ba 100644 --- a/files/ja/web/javascript/reference/errors/bad_radix/index.html +++ b/files/ja/web/javascript/reference/errors/bad_radix/index.html @@ -2,30 +2,34 @@ title: 'RangeError: radix must be an integer' slug: Web/JavaScript/Reference/Errors/Bad_radix tags: - - Errors - - JavaScript - - RangeError +- Error +- Errors +- JavaScript +- RangeError translation_of: Web/JavaScript/Reference/Errors/Bad_radix ---
{{jsSidebar("Errors")}}
-

メッセージ

+

JavaScript の例外 "radix must be an integer at least 2 and no greater than 36" は、 {{jsxref("Number.prototype.toString()")}} メソッドまたは {{jsxref("BigInt.prototype.toString()")}} メソッドのオプションの radix 引数が指定されたものの、 2 から 36 までの範囲になかったときに発生します。

-
RangeError: radix must be an integer at least 2 and no greater than 36 (Firefox)
+  

メッセージ

+ +
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)
 
-

エラータイプ

+

エラー種別

{{jsxref("RangeError")}}

-

何がうまくいかなかったのか?

+

原因

-

{{jsxref("Number.prototype.toString()")}} メソッドで、オプションの radix パラメーターを使用しています。このパラメーターは、数値を表すために使用するナンバーシステムを指定する 2 から 36 の整数(数)でなければなりません。

+

{{jsxref("Number.prototype.toString()")}} メソッドまたは {{jsxref("BigInt.prototype.toString()")}} メソッドのオプションの radix 引数が指定されています。この引数は、数値を表すために使用する基数を指定する 2 から 36 の整数 (数) でなければなりません。

-

なぜ上限が 36 なのでしょうか?10 よりも大きい基数には、アルファベットが数値として用いられます。ラテンアルファベットは 26 文字しかないため、基数は 36 以上にはできません。

+

なぜ上限が 36 なのでしょうか? 10 よりも大きい基数の場合は、アルファベットが数値として用いられます。したがって、 (英語およびほかの多くの言語で用いられる) ラテン文字のアルファベットは 26 文字しかないため、基数は 36 以上にすることができません。

-

一般的な基数として、以下のものを使用します:

+

一般的な基数には、次のものがあります。

-

+

-

無効なケース

+

無効なケース

(42).toString(0);
 (42).toString(1);
 (42).toString(37);
 (42).toString(150);
-// フォーマットのために、このような文字列は使用できません:
-(12071989).toString("MM-dd-yyyy");
+// フォーマットのために、このような文字列は使用できません。
+(12071989).toString('MM-dd-yyyy');
 
-

有効なケース

+

有効なケース

(42).toString(2);     // "101010" (二進数)
 (13).toString(8);     // "15"     (八進数)
@@ -54,8 +58,9 @@ RangeError: toString() radix argument must be between 2 and 36 (Chrome)
 (100000).toString(16) // "186a0"  (十六進数)
 
-

関連項目

+

関連情報

-- cgit v1.2.3-54-g00ecf