このページはコミュニティーの尽力で英語から翻訳されました。MDN Web Docs コミュニティーについてもっと知り、仲間になるにはこちらから。

View in English Always switch to English

escape()

Deprecated

Avoid using this feature in new projects. TC39 included the escape() and unescape() methods in Annex B of the ECMAScript specification, which covers JavaScript features with "one or more undesirable characteristics and in the absence of legacy usage would be removed." This feature may be a candidate for removal from web standards or browsers.

メモ: escape() は、ブラウザーによって実装されている標準外の関数であり、エンジン間の互換性のためにのみ標準化されています。すべての JavaScript エンジンで実装されているとは限らず、すべての環境で動作するとは限りません。可能であれば、encodeURIComponent() または encodeURI() を使用してください。

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

構文

js
escape(str)

引数

str

エンコードする文字列。

返値

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

解説

escape 関数はグローバルオブジェクトのプロパティです。

escape() 関数は、ASCII 単語文字 (A–Z、a–z、0–9、_) および @\*_+-./ を除き、すべての文字をエスケープシーケンスに置き換えます。文字は UTF-16 コード単位によってエスケープされます。コード単位の値が 256 未満の場合は、必要に応じて左に 0 を補って、%XX の書式で 2 桁の 16 進数で表されます。それ以外の場合は、必要に応じて左に 0 を補って、%uXXXX の書式で 4 桁の 16 進数で表されます。

メモ: この関数は主にパーセントエンコードに使用され、 RFC 1738 のエスケープ形式を部分的に基にしています。エスケープ形式は、文字列リテラルにおけるエスケープシーケンスではありません。 %XX\xXX%uXXXX\uXXXX に置き換えることで、実際の文字列リテラルエスケープシーケンスを含む文字列を取得することができます。

escape の使用

js
escape("abc123"); // "abc123"
escape("äöü"); // "%E4%F6%FC"
escape("ć"); // "%u0107"

// 特殊文字
escape("@*_+-./"); // "@*_+-./"

仕様書

仕様書
ECMAScript® 2027 Language Specification
# sec-escape-string

ブラウザーの互換性

関連情報