当前位置: javascript教程 > 未分类 > 阅读正文

js的url编码函数

2021.6.4.   1064 次   733字

javascript的url编码函数有2个, 分别是

  • encodeURIComponent() — 编码url,
  • encodeURI() — 编码uri参数, 仅识别?后面的内容

进行url编码的作用有 2 个, 一个是解决中文乱码, 一个是解决符号乱码

把整个url进行编码

<script>
	console.log(encodeURIComponent("https://www.52dixiaowo.com?s=我是中文参数"))
</script>

输出结果如下, 会把整个url编码, 也就是所有内容

https%3A%2F%2Fwww.52dixiaowo.com%3Fs%3D%E6%88%91%E6%98%AF%E4%B8%AD%E6%96%87%E5%8F%82%E6%95%B0

对于uri编码, 也就是仅进行参数编码

<script>
	console.log(encodeURI("https://www.52dixiaowo.com?s=我是中文参数"))
</script>

输出的结果如下, 仅参数编码, 也就是?后的内容

https://www.52dixiaowo.com?s=%E6%88%91%E6%98%AF%E4%B8%AD%E6%96%87%E5%8F%82%E6%95%B0

当你在 ajax 中进行get请求参数包含中文时, 指定的参数需完整编码, 此时就用的是 encodeURIComponent()

在某些时候仅需要编码uri, 就使用encodeURI()

值得注意的是, 仅包含中文和符号时, 必须使用encodeURIComponent, 比如”学习C++”, 如果你使用了encodeURI, 那么这个++会变成2个空格

可以看到这两个函数有各自的作用, 在结果生成方面, 两个函数编码方式一致.

本篇完,还有疑问?

加入QQ交流群:11500065636 IT 技术交流群