@@ -10,17 +10,17 @@ URL 是互联网的基础设施之一。浏览器提供了一些原生对象,
1010
1111` Location ` 对象提供以下属性。
1212
13- - Location.href:整个 URL。
14- - Location.protocol:当前 URL 的协议,包括冒号(` : ` )。
15- - Location.host:主机,包括冒号(` : ` )和端口(默认的80端口和443端口会省略)。
16- - Location.hostname:主机名,不包括端口。
17- - Location.port:端口号。
18- - Location.pathname:URL 的路径部分,从根路径` / ` 开始。
19- - Location.search:查询字符串部分,从问号` ? ` 开始。
20- - Location.hash:片段字符串部分,从` # ` 开始。
21- - Location.username:域名前面的用户名。
22- - Location.password:域名前面的密码。
23- - Location.origin:URL 的协议、主机名和端口。
13+ - ` Location.href ` :整个 URL。
14+ - ` Location.protocol ` :当前 URL 的协议,包括冒号(` : ` )。
15+ - ` Location.host ` :主机,包括冒号(` : ` )和端口(默认的80端口和443端口会省略)。
16+ - ` Location.hostname ` :主机名,不包括端口。
17+ - ` Location.port ` :端口号。
18+ - ` Location.pathname ` :URL 的路径部分,从根路径` / ` 开始。
19+ - ` Location.search ` :查询字符串部分,从问号` ? ` 开始。
20+ - ` Location.hash ` :片段字符串部分,从` # ` 开始。
21+ - ` Location.username ` :域名前面的用户名。
22+ - ` Location.password ` :域名前面的密码。
23+ - ` Location.origin ` :URL 的协议、主机名和端口。
2424
2525``` javascript
2626// 当前网址为
@@ -115,12 +115,14 @@ window.location.reload(true);
115115
116116## URL 的编码和解码
117117
118- 网页的 URL 只能包含合法的字符,这可以分成两类 。
118+ 网页的 URL 只能包含合法的字符。合法字符分成两类 。
119119
120- - URL 元字符:分号(` ; ` ),逗号(',' ),斜杠(` / ` ),问号(` ? ` ),冒号(` : ` ),at(` @ ` ),` & ` ,等号(` = ` ),加号(` + ` ),美元符号(` $ ` ),井号(` # ` )
121- - 语义字符:` a-z ` ,` A-Z ` ,` 0-9 ` ,连词号(` - ` ),下划线(` _ ` ),点(` . ` ),感叹号(` ! ` ),波浪线(` ~ ` ),星号(` * ` ),单引号(` \` `),圆括号(` ()`)
120+ - URL 元字符:分号(` ; ` ),逗号(` , ` ),斜杠(` / ` ),问号(` ? ` ),冒号(` : ` ),at(` @ ` ),` & ` ,等号(` = ` ),加号(` + ` ),美元符号(` $ ` ),井号(` # ` )
121+ - 语义字符:` a-z ` ,` A-Z ` ,` 0-9 ` ,连词号(` - ` ),下划线(` _ ` ),点(` . ` ),感叹号(` ! ` ),波浪线(` ~ ` ),星号(` * ` ),单引号(` ' ` ),圆括号(` () ` )
122122
123- 除了以上字符,其他字符出现在 URL 之中都必须转义,规则是根据操作系统的默认编码,将每个字节转为百分号(` % ` )加上两个大写的十六进制字母。比如,UTF-8 的操作系统上,` http://www.example.com/q=春节 ` 这个 URL 之中,汉字“春节”不是 URL 的合法字符,所以被浏览器自动转成` http://www.example.com/q=%E6%98%A5%E8%8A%82 ` 。其中,“春”转成了` %E6%98%A5 ` ,“节”转成了“%E8%8A%82”。这是因为“春”和”节“的 UTF-8 编码分别是` E6 98 A5 ` 和` E8 8A 82 ` ,将每个字节前面加上百分号,就构成了 URL 编码。
123+ 除了以上字符,其他字符出现在 URL 之中都必须转义,规则是根据操作系统的默认编码,将每个字节转为百分号(` % ` )加上两个大写的十六进制字母。
124+
125+ 比如,UTF-8 的操作系统上,` http://www.example.com/q=春节 ` 这个 URL 之中,汉字“春节”不是 URL 的合法字符,所以被浏览器自动转成` http://www.example.com/q=%E6%98%A5%E8%8A%82 ` 。其中,“春”转成了` %E6%98%A5 ` ,“节”转成了` %E8%8A%82 ` 。这是因为“春”和”节“的 UTF-8 编码分别是` E6 98 A5 ` 和` E8 8A 82 ` ,将每个字节前面加上百分号,就构成了 URL 编码。
124126
125127JavaScript 提供四个 URL 的编码/解码方法。
126128
0 commit comments