escape()
is not strictly deprecated (as in "removed from the Web standards"), it is defined in Annex B of the ECMA-262 standard, whose introduction states:
… All of the language features and behaviours specified in this annex have one or more undesirable characteristics and in the absence of legacy usage would be removed from this specification. …
… Programmers should not use or assume the existence of these features and behaviours when writing new ECMAScript code. …
The escape()
function computes a new string in which certain characters have been replaced by a hexadecimal escape sequence.
Note that this function was used mostly for URL queries (the part of a URL following '?') not for escapes in ordinary String literals, which use the format "\xHH", where HH are two hexadecimal digits (with \xHH\xHH... for higher-plane Unicode characters). Escaped characters in String literals can be expanded by replacing the \x by % and then using the decodeURIComponent
function.
Syntax
escape(str)
Parameters
str
- A string to be encoded.
Return value
A new string in which certain characters have been escaped.
Description
The escape
function is a property of the global object. Special characters are encoded with the exception of: @*_+-./
The hexadecimal form for characters, whose code unit value is 0xFF or less, is a two-digit escape sequence: %xx. For characters with a greater code unit, the four-digit format %uxxxx is used.
Examples
escape('abc123'); // "abc123" escape('äöü'); // "%E4%F6%FC" escape('ć'); // "%u0107" // special characters escape('@*_+-./'); // "@*_+-./"
Specifications
Specification | Status | Comment |
---|---|---|
ECMAScript 1st Edition (ECMA-262) | Standard | Initial definition. |
ECMAScript 5.1 (ECMA-262) The definition of 'escape' in that specification. |
Standard | Defined in the (informative) Compatibility Annex B |
ECMAScript 2015 (6th Edition, ECMA-262) The definition of 'escape' in that specification. |
Standard | Defined in the (normative) Annex B for Additional ECMAScript Features for Web Browsers |
ECMAScript Latest Draft (ECMA-262) The definition of 'escape' in that specification. |
Draft | Defined in the (normative) Annex B for Additional ECMAScript Features for Web Browsers |
Browser compatibility
Desktop | Mobile | Server | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
escape | Chrome Full support 1 | Edge Full support 12 | Firefox Full support 1 | IE Full support 3 | Opera Full support Yes | Safari Full support Yes | WebView Android Full support 1 | Chrome Android Full support 18 | Firefox Android Full support 4 | Opera Android Full support Yes | Safari iOS Full support Yes | Samsung Internet Android Full support 1.0 | nodejs Full support Yes |
Legend
- Full support
- Full support
- Deprecated. Not for use in new websites.
- Deprecated. Not for use in new websites.