Name
encodeURI( ) — escape characters in a URI
Availability
JavaScript 1.5; JScript 5.5; ECMAScript v3
Synopsis
encodeURI(uri
)
Arguments
-
uri
A string that contains the URI or other text to be encoded.
Returns
A copy of uri
, with certain characters
replaced by hexadecimal escape sequences.
Throws
-
URIError
Indicates that
uri
contains malformed Unicode surrogate pairs and cannot be encoded.
Description
encodeURI( )
is a global function that returns an
encoded copy of its uri
argument. ASCII
letters and digits are not encoded, nor are the following ASCII
punctuation characters:
- _ . ! ~ * ' ( )
Because encodeURI( )
is intended to encode
complete URIs, the following ASCII punctuation characters, which have
special meaning in URIs, are not escaped either:
; / ? : @ & = + $ , #
Any other characters in uri
are replaced
by converting the character to its UTF-8 encoding and then encoding
each of the resulting one, two, or three bytes with a hexadecimal
escape sequence of the form %xx
. In this encoding
scheme, ASCII characters are replaced with a single
%xx
escape, characters with encodings between
\u0080
and \u07ff
are replaced
with two escape sequences, and all other 16-bit Unicode characters
are replaced with three escape sequences.
If you use this method to encode a URI, you should be certain that none of the components of the URI (such as the query string) contain URI separator characters such as ? and #. If the components may contain these characters, you should encode each component separately ...
Get JavaScript: The Definitive Guide, Fourth Edition now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.