带反斜杠的JavaScript组件

带反斜杠的JavaScript组件,javascript,encoding,Javascript,Encoding,关于encodeURIComponent函数,说明如下内容: 此函数用于对特殊字符进行编码。此外 它对以下字符进行编码:,/?:@&=+$# 这是否意味着它不能对反斜杠(\)进行编码 此函数用于对特殊字符进行编码。此外,它还编码以下字符:,/?:@&=+$# 这个定义对于什么是“特殊字符”是模糊的。这听起来像是encodeURI和encodeURIComponent之间的比较。两者都将正确地转义为\,%5C,因此您不必担心反斜杠 encodeURI将保留列出的字符,因为假定整个URI正在编码:

关于
encodeURIComponent
函数,说明如下内容:

此函数用于对特殊字符进行编码。此外 它对以下字符进行编码:
,/?:@&=+$#

这是否意味着它不能对反斜杠(
\
)进行编码

此函数用于对特殊字符进行编码。此外,它还编码以下字符:
,/?:@&=+$#

这个定义对于什么是“特殊字符”是模糊的。这听起来像是
encodeURI
encodeURIComponent
之间的比较。两者都将正确地转义为
\
%5C
,因此您不必担心反斜杠

encodeURI
将保留列出的字符,因为假定整个URI正在编码:

encodeURI('http://example.com/foo bar/baz.html');
//produces "http://example.com/foo%20bar/baz.html"
encodeURIComponent
将转义所有内容,因为假定该字符串将用作查询字符串的一部分:

'http://example.com?foo=' + encodeURIComponent('http://example.com/fizz/buzz.html');
//produces "http://example.com?foo=http%3A%2F%2Fexample.com%2Ffizz%2Fbuzz.html"