iceBreak
Code Change Word
一、escape 和 unescape
返回一个字符的Unicode编码值
注意:除了ASCII字母、数字、标点符号"@ * _ + - . /"以外,对其他所有字符进行编码
console.log(escape("https://www.cnblogs.com/icebreaker/?client_id=admin&lang=en"))
// "https%3A//www.cnblogs.com/icebreaker/%3Fclient_id%3Dadmin%26lang%3Den"
console.log(unescape("https%3A//www.cnblogs.com/icebreaker/%3Fclient_id%3Dadmin%26lang%3Den"))
// "https://www.cnblogs.com/icebreaker/?client_id=admin&lang=en"
二、encodeURI() 和 decodeURI()
除了常见的符号以外,针对"; / ? : @ & = + $ , #",也不进行编码。对应的解码函数是decodeURI()
注意:它不对单引号'编码
console.log(encodeURI('https://www.cnblogs.com/icebreaker/?client_id=admin&lang=en中文'))
// https://www.cnblogs.com/icebreaker/?client_id=admin&lang=en%E4%B8%AD%E6%96%87
console.log(decodeURI('https://www.cnblogs.com/icebreaker/?client_id=admin&lang=en%E4%B8%AD%E6%96%87'))
// https://www.cnblogs.com/icebreaker/?client_id=admin&lang=en中文

三、encodeURIComponent() 和 decodeURIComponent()

将除了语义字符之外的字符进行转义,包括元字符,因此,它的参数通常是URL的路径或参数值,而不是整个URL。对应的解码函数是decodeURIComponent()
console.log(encodeURIComponent("https://www.cnblogs.com/icebreaker/?client_id=admin&lang=en"))
// https%3A%2F%2Fwww.cnblogs.com%2Ficebreaker%2F%3Fclient_id%3Dadmin%26lang%3Den
console.log(decodeURIComponent("https%3A%2F%2Fwww.cnblogs.com%2Ficebreaker%2F%3Fclient_id%3Dadmin%26lang%3Den"))
// https://www.cnblogs.com/icebreaker/?client_id=admin&lang=en
posted on 2020-05-23 18:56  iceBreak  阅读(186)  评论(0)    收藏  举报

your browser does not support the video tag