当前位置: 首页 > article >正文

encodeURI(),encodeURIComponent()区别

encodeURI(),encodeURIComponent()区别

encodeURI(): 对整个url(链接/网络链接)进行编码。
对中文,完全编码。
对英文不带空格则不会编码,带空格则会对空格编码。
解码:decodeURI()

例如:
let ChineseUrl = "https://baidu.com/uat/share?server=服务器&language=英语&shareId=0123456&sport=足球&subject=运动&name=鱼&testResult=成功&nobanner=true";
ChineseUrl = encodeURI(ChineseUrl); 
console.log(ChineseUrl);
// https://baidu.com/uat/share?server=%E6%9C%8D%E5%8A%A1%E5%99%A8&language=%E8%8B%B1%E8%AF%AD&shareId=0123456&sport=%E8%B6%B3%E7%90%83&subject=%E8%BF%90%E5%8A%A8&name=%E9%B1%BC&testResult=%E6%88%90%E5%8A%9F&nobanner=true

let EnglishUrl = "https://baidu.com/uat/share?server=server&language=en&shareId=0123456&sport=football&subject=sport&name=yu&testResult=success&nobanner=true";
EnglishUrl = encodeURI(EnglishUrl);
console.log(EnglishUrl);
// https://baidu.com/uat/share?server=server&language=en&shareId=0123456&sport=football&subject=sport&name=yu&testResult=success&nobanner=true

let EnglishUrl2 = "https://baidu.com/uat/share?server=https:example.com/?language=en&shareId=0123456&sport=football&subject=sport&name=zhang san&testResult=success&nobanner=true";
EnglishUrl2 = encodeURI(EnglishUrl2);
console.log(EnglishUrl2);
// https://baidu.com/uat/share?server=https:example.com/?language=en&shareId=0123456&sport=football&subject=sport&name=zhang%20san&testResult=success&nobanner=true

encodeURIComponent(): 对url(链接/网络链接)的问号(?)后进行编码
encodeURIComponent(): 对整个url(链接/网络链接)进行编码,在浏览器不会打开。
对中文,完全编码。
对英文不带空格则不会编码,带空格则会对空格编码。
解码:decodeURIComponent()

let ChineseUrl = "https://baidu.com/uat/share?server=服务器&language=英语&shareId=0123456&sport=足球&subject=运动&name=张三&testResult=成功&nobanner=true";
ChineseUrl = encodeURIComponent(ChineseUrl);
console.log(ChineseUrl);
// https%3A%2F%2Fbaidu.com%2Fuat%2Fshare%3Fserver%3D%E6%9C%8D%E5%8A%A1%E5%99%A8%26language%3D%E8%8B%B1%E8%AF%AD%26shareId%3D0123456%26sport%3D%E8%B6%B3%E7%90%83%26subject%3D%E8%BF%90%E5%8A%A8%26name%3D%E5%BC%A0%E4%B8%89%26testResult%3D%E6%88%90%E5%8A%9F%26nobanner%3Dtrue

let chineseServer = "服务器";
chineseServer = encodeURIComponent(chineseServer);
let chineseLanguage = "英语";
chineseLanguage = encodeURIComponent(chineseLanguage);
let chineseShareId = "0123456";
chineseShareId = encodeURIComponent(chineseShareId);
let chineseSport = "足球";
chineseSport = encodeURIComponent(chineseSport);
let chineseSubject = "运动";
chineseSubject = encodeURIComponent(chineseSubject);
let chineseName = "张三";
chineseName = encodeURIComponent(chineseName);
let chineseTestResult = "成功";
chineseTestResult = encodeURIComponent(chineseTestResult);
let ChineseUrl2 = `https://baidu.com/uat/share?server=${chineseServer}&language=${chineseLanguage}&shareId=${chineseShareId}&sport=${chineseSport}&subject=${chineseSubject}&name=${chineseName}&testResult=${chineseTestResult}&nobanner=true`;
console.log(ChineseUrl2);
// https://baidu.com/uat/share?server=%E6%9C%8D%E5%8A%A1%E5%99%A8&language=%E8%8B%B1%E8%AF%AD&shareId=0123456&sport=%E8%B6%B3%E7%90%83&subject=%E8%BF%90%E5%8A%A8&name=%E5%BC%A0%E4%B8%89&testResult=%E6%88%90%E5%8A%9F&nobanner=true

let englishServer = "server";
englishServer = encodeURIComponent(englishServer);
let englishLanguage = "en";
englishLanguage = encodeURIComponent(englishLanguage);
let englishShareId = "0123456";
englishShareId = encodeURIComponent(englishShareId);
let englishSport = "football";
englishSport = encodeURIComponent(englishSport);
let englishSubject = "sport";
englishSubject = encodeURIComponent(englishSubject);
let englishName = "zhang san";
englishName = encodeURIComponent(englishName);
let englishTestResult = "success";
englishTestResult = encodeURIComponent(englishTestResult);
let englishUrl = `https://baidu.com/uat/share?server=${englishServer}&language=${englishLanguage}&shareId=${englishShareId}&sport=${englishSport}&subject=${englishSubject}&name=${englishName}&testResult=${englishTestResult}&nobanner=true`;
console.log(englishUrl);
// https://baidu.com/uat/share?server=server&language=en&shareId=0123456&sport=football&subject=sport&name=zhang%20san&testResult=success&nobanner=true

**

encodeURI(),encodeURIComponent()区别:

encodeURI()不会对 ASCII字母、数字、~!@#$&()=:/,;?+'字符编码
encodeURIComponent()不会对ASCII字母、数字、~!
()'字符编码


http://www.kler.cn/a/542884.html

相关文章:

  • leetcode_二叉树 108. 将有序数组转换为二叉搜索树
  • Unity3D实现显示模型线框(shader)
  • Docker Compose介绍及安装使用MongoDB数据库详解
  • 【Elasticsearch】监控与管理:集群监控指标
  • 基于Python的人工智能驱动基因组变异算法:设计与应用(下)
  • 现代前端开发的演进与未来趋势:从工具革新到技术突破
  • AF3 gdt函数解读
  • nginx安装并部署前端项目【包括Linux与Windows系统】
  • 前端性能分析常见内容
  • C语言蓝桥杯1003: [编程入门]密码破译
  • 香港中文大学 Adobe 推出 MotionCanvas:开启用户掌控的电影级图像视频创意之旅。
  • 基于Springboot(Maven项目)——分页
  • 在 debian 12 上安装 mysqlclient 报错
  • 代码随想录--977有序数组的平方
  • Java Stream 全面解析
  • 使用EVE-NG-锐捷实现三层数据通信
  • 曝苹果2026年秋季推首款折叠iPhone
  • Git 安全与权限管理
  • 深入探索现代CSS:从基础到未来趋势
  • 128,【1】buuctf [极客大挑战 2019]PHP
  • 浅谈自己对RPC的理解
  • AspectJ 下 Advisor 的排序过程
  • untiy3d 触发和碰撞区别
  • innovus如何分步长func和dft时钟
  • MacBook Pro M2安装deepseek
  • C++20 新特性解析