From a07f13e55ee1cf0c0b7bf48709f2f0b6570f7d3d Mon Sep 17 00:00:00 2001 From: Masahiro FUJIMOTO Date: Wed, 23 Jun 2021 00:56:14 +0900 Subject: Web/JavaScript/Reference/Errors/Ma-Missing_c* を更新 (#1170) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 2021/06/12 時点の英語版に基づき更新 --- .../reference/errors/malformed_uri/index.html | 39 ++++++++++++---------- 1 file changed, 22 insertions(+), 17 deletions(-) (limited to 'files/ja/web/javascript/reference/errors/malformed_uri') diff --git a/files/ja/web/javascript/reference/errors/malformed_uri/index.html b/files/ja/web/javascript/reference/errors/malformed_uri/index.html index 0cb5f16458..c0940bd266 100644 --- a/files/ja/web/javascript/reference/errors/malformed_uri/index.html +++ b/files/ja/web/javascript/reference/errors/malformed_uri/index.html @@ -2,17 +2,20 @@ title: 'URIError: malformed URI sequence' slug: Web/JavaScript/Reference/Errors/Malformed_URI tags: - - Error - - Errors - - JavaScript - - URIError +- Error +- Errors +- JavaScript +- URIError translation_of: Web/JavaScript/Reference/Errors/Malformed_URI ---
{{jsSidebar("Errors")}}
-

メッセージ

+

JavaScript の例外 "malformed URI sequence" は、 URI エンコードまたはデコードに失敗したときに発生します。

-
URIError: malformed URI sequence (Firefox)
+

エラーメッセージ

+ +
URIError: The URI to be encoded contains invalid character (Edge)
+URIError: malformed URI sequence (Firefox)
 URIError: URI malformed (Chrome)
 
@@ -22,13 +25,13 @@ URIError: URI malformed (Chrome)

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

-

URI エンコードかデコードが成功しませんでした。{{jsxref("decodeURI")}} か {{jsxref("encodeURI")}}、{{jsxref("encodeURIComponent")}}、{{jsxref("decodeURIComponent")}} 関数の引数が無効のため、関数は適切にエンコード、またはデコードできませんでした。

+

URI エンコードまたはデコードが成功しませんでした。{{jsxref("decodeURI")}} か {{jsxref("encodeURI")}}、{{jsxref("encodeURIComponent")}}、{{jsxref("decodeURIComponent")}} 関数の引数が無効のため、関数は適切にエンコード、またはデコードできませんでした。

-

エンコーディング

+

エンコード

-

エンコーディングは、特定の文字インスタンスをそれぞれ、文字の UFT-8 エンコーディングを表す 1 つか 2 つ、3 つ 4 つのシーケンスに置き換えます。高低ペアの一部ではないサロゲートをエンコードしようとした場合、{{jsxref("URIError")}} がスローされます。たとえば:

+

エンコードは、特定の文字インスタンスをそれぞれ、文字の UTF-8 エンコーディングを表す 1 から 4 つの並びに置き換えます。高低ペアの一部ではないサロゲートをエンコードしようとした場合、次のように {{jsxref("URIError")}} が発生します。

encodeURI('\uD800');
 // "URIError: malformed URI sequence"
@@ -37,18 +40,20 @@ encodeURI('\uDFFF');
 // "URIError: malformed URI sequence"
 
-

高低ペアは ok です。たとえば:

+

高低ペアが正しい場合の例です。

encodeURI('\uD800\uDFFF');
 // "%F0%90%8F%BF"
-

デコーディング

+

デコード

+ +

デコードでは、エンコードされた URI の部分に含まれるそれぞれのエスケープシーケンスを、それを表す文字に置き換えます。そのような文字がない場合、エラーが発生します。

decodeURIComponent('%E0%A4%A');
 // "URIError: malformed URI sequence"
 
-

適切な入力を行うと、通常は次のようになります:

+

適切な入力を行うと、通常は次のようになります。

decodeURIComponent('JavaScript_%D1%88%D0%B5%D0%BB%D0%BB%D1%8B');
 // "JavaScript_шеллы"
@@ -56,9 +61,9 @@ encodeURI('\uDFFF');

関連項目

-- cgit v1.2.3-54-g00ecf