表示されているページは、編集用 バージョンの MDN Web Docsです

MDN Web Docs のユーザーとして表示: https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/escape

警告: 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('@*_+-./');    // "@*_+-./"

仕様書

仕様書
ECMAScript (ECMA-262)
escape の定義

ブラウザーの互換性

Update compatibility data on GitHub
デスクトップモバイルサーバー
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewAndroid 版 ChromeAndroid 版 FirefoxAndroid 版 OperaiOSのSafariSamsung InternetNode.js
escape
非推奨
Chrome 完全対応 1Edge 完全対応 12Firefox 完全対応 1IE 完全対応 3Opera 完全対応 3Safari 完全対応 1WebView Android 完全対応 1Chrome Android 完全対応 18Firefox Android 完全対応 4Opera Android 完全対応 10.1Safari iOS 完全対応 1Samsung Internet Android 完全対応 1.0nodejs 完全対応 0.1.100

凡例

完全対応  
完全対応
非推奨。新しいウェブサイトでは使用しないでください。
非推奨。新しいウェブサイトでは使用しないでください。

関連情報

ドキュメントのタグと貢献者

最終更新者: mfuji09,