From 8c68b0bd6f8565c51416ec3f6ce4e78a32d014fc Mon Sep 17 00:00:00 2001 From: Masahiro FUJIMOTO Date: Sat, 4 Sep 2021 00:24:01 +0900 Subject: Global_Objects/escape を更新 (#2206) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../reference/global_objects/escape/index.html | 85 ---------------------- .../reference/global_objects/escape/index.md | 70 ++++++++++++++++++ 2 files changed, 70 insertions(+), 85 deletions(-) delete mode 100644 files/ja/web/javascript/reference/global_objects/escape/index.html create mode 100644 files/ja/web/javascript/reference/global_objects/escape/index.md diff --git a/files/ja/web/javascript/reference/global_objects/escape/index.html b/files/ja/web/javascript/reference/global_objects/escape/index.html deleted file mode 100644 index 046fd2667b..0000000000 --- a/files/ja/web/javascript/reference/global_objects/escape/index.html +++ /dev/null @@ -1,85 +0,0 @@ ---- -title: escape() -slug: Web/JavaScript/Reference/Global_Objects/escape -tags: - - Deprecated - - JavaScript - - Method - - メソッド - - 非推奨 -translation_of: Web/JavaScript/Reference/Global_Objects/escape ---- -
{{jsSidebar("Objects")}}
- -
警告: escape() は厳密には非推奨ではありませんが (「ウェブ標準から削除された」という意味で)、ECMA-262 標準の Annex B で定義されており、その導入部には次のように書かれています。 - -
… この付属書で規定されているすべての言語機能と動作は、1つ以上の望ましくない特性を持ち、レガシーな使用例がない場合は、この仕様から削除されます。…
-… プログラマは、新しい ECMAScript コードを書くときに、これらの機能や動作の存在を使用したり、仮定したりしてはいけません。…
-
- -

The escape() 関数は、特定の文字を16進数のエスケープシーケンスで置き換えた新しい文字列を計算します。

- -
-

メモ: この関数は、主に URL クエリ (URL の ? に続く部分) に使われていました。 — "\xHH" の形式を使用して、ふつうの文字列リテラルをエスケープするためのものではありません。 (HHは2桁の16進数であり、より高い面の Unicode 文字には「\xHH\xHHxHH」という形式が使われます。)

- -

文字列リテラル内のエスケープされた文字は、 \x% に置き換えてから、 decodeURIComponent() 関数を使用することで展開することができます。

-
- -

構文

- -
escape(str)
- -

引数

- -
-
str
-
エンコードする文字列。
-
- -

返値

- -

特定の文字がエスケープされた新しい文字列。

- -

解説

- -

escape 関数はグローバルオブジェクトのプロパティです。特殊文字は @*_+-./ 以外の文字が符号化されます。

- -

文字の16進数形式として、文字コードの値が 0xFF 以下になる文字は 2 桁のエスケープシーケンス %xx が、それ以上の場合は 4 桁のエスケープシーケンス %uxxxx%uxxxx が使われます。

- -

- -
escape('abc123');     // "abc123"
-escape('äöü');        // "%E4%F6%FC"
-escape('ć');          // "%u0107"
-
-// 特殊文字
-escape('@*_+-./');    // "@*_+-./"
- -

仕様書

- - - - - - - - - - - - -
仕様書
{{SpecName('ESDraft', '#sec-escape-string', 'escape')}}
- - - -

ブラウザーの互換性

- -

{{Compat("javascript.builtins.escape")}}

- -

関連情報

- - diff --git a/files/ja/web/javascript/reference/global_objects/escape/index.md b/files/ja/web/javascript/reference/global_objects/escape/index.md new file mode 100644 index 0000000000..5546f806fd --- /dev/null +++ b/files/ja/web/javascript/reference/global_objects/escape/index.md @@ -0,0 +1,70 @@ +--- +title: escape() +slug: Web/JavaScript/Reference/Global_Objects/escape +tags: + - Deprecated + - JavaScript + - メソッド +browser-compat: javascript.builtins.escape +translation_of: Web/JavaScript/Reference/Global_Objects/escape +--- +{{jsSidebar("Objects")}} + +> **Warning:** `escape()` は厳密には (「ウェブ標準から削除された」という意味で) 非推奨ではありませんが、ECMA-262 標準の [Annex B](https://www.ecma-international.org/ecma-262/9.0/index.html#sec-additional-ecmascript-features-for-web-browsers) で定義されており、その導入部には次のように書かれています。 +> +> > … この付録で規定されているすべての言語機能と動作は、 1 つ以上の望ましくない特性を持ち、レガシーな使用例がない場合は、この仕様から削除されます。… +> … プログラマーは、新しい ECMAScript のコードを書くときに、これらの機能や動作の存在を使用したり、仮定したりしてはいけません。… + +The **`escape()`** 関数は、特定の文字を 16 進数のエスケープシーケンスで置き換えた新しい文字列を計算します。 + +> **Note:** この関数は、主に URL クエリー (URL の `?` に続く部分) に使われていました。 — "`\xHH`" の形式を使用して、ふつうの文字列リテラルをエスケープするためのものでは*ありません*。 (HH は 2 桁の 16 進数であり、より高い面の Unicode 文字には「\xHH\xHHxHH」という形式が使われます。) +> +> 文字列リテラル内のエスケープされた文字は、 `\x` を `%` に置き換えてから、 `decodeURIComponent()` 関数を使用することで展開することができます。 + +## 構文 + +```js +escape(str) +``` + +### 引数 + +- `str` + - : エンコードする文字列。 + +### 返値 + +特定の文字がエスケープされた新しい文字列。 + +## 解説 + +`escape` 関数は*グローバルオブジェクト*のプロパティです。特殊文字は `@*_+-./` 以外の文字が符号化されます。 + +文字の 16 進数形式として、文字コードの値が `0xFF` 以下になる文字は 2 桁のエスケープシーケンス `%xx` が、それ以上の場合は 4 桁のエスケープシーケンス `%uxxxx` が使われます。 + +## 例 + +### escape の使用 + +```js +escape('abc123'); // "abc123" +escape('äöü'); // "%E4%F6%FC" +escape('ć'); // "%u0107" + +// 特殊文字 +escape('@*_+-./'); // "@*_+-./" +``` + +## 仕様書 + +{{Specifications}} + +## ブラウザーの互換性 + +{{Compat}} + +## 関連情報 + +- {{jsxref("encodeURI")}} +- {{jsxref("encodeURIComponent")}} +- {{jsxref("unescape")}} -- cgit v1.2.3-54-g00ecf