Home > Web Front-end > JS Tutorial > Comparison of several URL encoding methods in Javascript_javascript skills

Comparison of several URL encoding methods in Javascript_javascript skills

WBOY
Release: 2016-05-16 16:18:10
Original
1545 people have browsed it

There are several methods to encode URL strings in JavaScript: escape(), encodeURI(), and encodeURIComponent(). These encodings play different roles.

escape() method:

Use the ISO Latin character set to encode the specified string. All spaces, punctuation marks, special characters and other non-ASCII characters will be converted into character encoding in %xx format (xx is equal to the hexadecimal number of the character's encoding in the character set table). For example, the encoding corresponding to the space character is .

Characters that will not be encoded by this method: @ * /

encodeURI() method:

Convert URI string into escape format string using UTF-8 encoding format.

Characters that will not be encoded by this method: ! @ # $& * ( ) = : / ; ? '

encodeURIComponent() method:

Convert URI string into escape format string using UTF-8 encoding format. Compared with encodeURI(), this method will encode more characters, such as / and other characters. So if the string contains several parts of the URI, you cannot use this method to encode, otherwise the URL will display an error after the / character is encoded.

Characters that will not be encoded by this method: ! * ( ) '

Therefore, for Chinese strings, if you do not want to convert the string encoding format into UTF-8 format (for example, when the charset of the original page and the target page is the same), you only need to use escape. If your page is GB2312 or other encoding, and the page that accepts parameters is UTF-8 encoded, you must use encodeURI or encodeURIComponent.

In addition, encodeURI/encodeURIComponent was introduced after javascript1.5, and escape was available in javascript1.0.

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template