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

View in English Always switch to English

unescape()

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.

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

unescape() 関数は、16 進エスケープシーケンスをそれらが表す文字に置き換えた新しい文字列を計算します。エスケープシーケンスは、 escape() のような関数によって導入される場合があります。

構文

js
unescape(str)

引数

str

デコードされる文字列。

返値

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

解説

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

unescape() 関数は、エスケープシーケンスを、それが表す文字に置き換えます。具体的には、%XX または %uXXXX (ここで X は 1 桁の 16 進数) という形のエスケープシーケンスを、16 進値 XX/XXXX を持つ文字に置き換えます。エスケープシーケンスが有効なエスケープシーケンスでない場合(例えば、% の後に 1 桁または 0 桁の 16 進数字が続く場合)、そのまま残されます。

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

unescape の使用

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

仕様書

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

ブラウザーの互換性

関連情報