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

View in English Always switch to English

escape()

非推奨;: この機能は非推奨になりました。まだ対応しているブラウザーがあるかもしれませんが、すでに関連するウェブ標準から削除されているか、削除の手続き中であるか、互換性のためだけに残されている可能性があります。使用を避け、できれば既存のコードは更新してください。このページの下部にある互換性一覧表を見て判断してください。この機能は突然動作しなくなる可能性があることに注意してください。

メモ: 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("@*_+-./"); // "@*_+-./"

仕様書

Specification
ECMAScript® 2026 Language Specification
# sec-escape-string

ブラウザーの互換性

関連情報