首页 > 其他分享 >js转码方法

js转码方法

时间:2024-09-03 09:04:12浏览次数:9  
标签:编码 转码 URI js 字符 encodeURIComponent 方法 特殊字符

项目开发传参时会遇到用汉字或者特殊字符当做参数值的情况,这时需要转码一下才能正常传参,不然会因为不支持汉字而报错

转码方法共有三种:

escape()
encodeURI()
encodeURIComponent()

前两种不过多讨论,因为encodeURIComponent()能够正确处理更多的特殊字符,并确保整个 URI 都得到正确的编码,因此encodeURIComponent()使用的地方也是最多的。

例子:

能够很明显的看出来,encodeURIComponent()转码最为彻底,而想要解码,也很简单,使用 decodeURIComponent()就行。

例子:

下面是encodeURIComponent()的详细功能:
功能:encodeURIComponent() 用于编码 URI 中的组成部分,将字符串转换为适合在 URI 中传输的形式,使用 UTF-8 编码。与 encodeURI() 不同,它会对 URI 中的更多字符进行编码,包括 URI 中的一些特殊字符。
不支持编码的字符:这些字符包括 !、'、(、)、*、-、.、_、~ 以及所有的数字和字母(0-9、a-z、A-Z)。

标签:编码,转码,URI,js,字符,encodeURIComponent,方法,特殊字符
From: https://www.cnblogs.com/s272/p/18393871

相关文章

  • vue3 vue-router 的基本使用和配置方法
    在 vue3 中使用 vue-router 的基本步骤如下:1.安装vue-router:npminstallvue-router@42.创建一个 vue-router 实例并定义路由:import{createRouter,createWebHistory}from'vue-router';importHomefrom'./components/Home.vue';importAboutfrom'./com......
  • Spring中基于redis stream 的消息队列实现方法
       本文主要介绍了消息队列的概念性质和应用场景,介绍了kafka、rabbitMq常用消息队列中间件的应用模型及消息队列的实现方式,并实战了在Spring中基于redisstream的消息队列实现方法。一、消息队列   消息队列是一种进程间通信或者同一个进程中不同线程间的通信方......
  • 前后端分离项目的创建方法(注:前端使用了vue技术,后端使用了Spring常用框架)
    下面我将创建一个实现系统登录的前后端分离项目:第一步:使用idea新建一个空项目,命名为Login,然后点击Create。第二步:找到setting选项,点击Build,Exception,Deployment,找到BuildTools,然后选择Maven,重写里面的settings.xml和repository,然后点击OK。(注:setting.xml一般在conf目录......
  • platformIO安装过程中速度慢、卡住的解决方法
    资源管理器定位到C:\Users\VSCode安装用户名\.platformio\penv打开pip.conf文件添加如下内容#超时时间,可自行调整 timeout=6000 #源地址,这里使用阿里云镜像 index-url=http://mirrors.aliyun.com/pypi/simple/ #添加源主机为可信主机 trusted-host=m......
  • [java][代码]Java中创建多线程方法
     在Java中,创建多线程有多种方法。以下是一些常见的方法:1.继承Thread类通过继承Thread类并重写其run方法来创建线程。classMyThreadextendsThread{publicvoidrun(){//线程要执行的任务System.out.println("线程运行中...");}......
  • Fabric.js全面介绍:强大的交互式图形编辑框架
    在前端开发中,图形界面的创建与编辑一直是开发者们关注的重点。随着Web技术的不断发展,HTML5Canvas提供了一个强大的画布功能,然而其API相对低级,操作复杂图形和高级交互时显得力不从心。这时,Fabric.js应运而生,它是一款基于HTML5Canvas的JavaScript库,为开发者们提供了一个简......
  • 性能测试-测试用例策略和方法
    一、测试用例无论是功能测试还是性能测试,执行用例时候都有优先级之分,对于性能测试来说,优先级可以这样划分:①.重要的(业务场景中的核心)②.重复的(用户使用频率最高的)③.重量级的(消耗大量系统资源的)设计性能测试用例的简要过程:1、具体的性能指标分为以下几类:①.系统容量......
  • 大模型学习方法之——大模型技术学习路线
    “技术学习无非涵盖三个方面,理论,实践和应用”大模型技术爆火至今已经有两年的时间了,而且大模型技术的发展潜力也不言而喻。因此,很多人打算学习大模型,但又不知道该怎么入手,因此今天就来了解一下大模型的学习路线。‍‍丁元英说:“透视社会有三个层面,技术,制度与文化”;同样的......
  • 华为鸿蒙手机谷歌框架GMS安装,安装时出现系统存在更高版本解决方法,毅然助手方法教程
    大家好,我是程序员毅然,一个资深的互联网软件开发者。每天给大家更新毅然助手华为鸿蒙安装谷歌的方法和各种可能遇到的问题的解决方法。以下方法来自工众号‘’毅然助手‘’,若侵权必删!出现这个问题的原因就是没有操作好毅然助手的第一步和用户和账户中有多个账号,下面我来详细......
  • 【算法改进】离散分数阶Caputo方法克服局部最优陷阱:蝠鲼觅食优化算法案例研究
    目录1.摘要2.离散分数阶Caputo方法3.基于Caputo定义的分数阶蝠鲼觅食优化算法4.结果展示5.参考文献6.代码获取1.摘要增强元启发式(MH)优化算法的探索和开发阶段是避免局部最优的关键,本工作提出了一种新的蝠鲼觅食优化算法变体,用于全局优化问题、工程设计优化问题和......