返回顶部
首页 > 资讯 > 精选 >js之encodeURI、encodeURIComponent、decodeURI、decodeURIComponent怎么用
  • 908
分享到

js之encodeURI、encodeURIComponent、decodeURI、decodeURIComponent怎么用

2023-07-06 04:07:42 908人浏览 薄情痞子
摘要

这篇文章主要介绍“js之encodeURI、encodeURIComponent、decodeURI、decodeURIComponent怎么用”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“js之e

这篇文章主要介绍“js之encodeURI、encodeURIComponent、decodeURI、decodeURIComponent怎么用”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“js之encodeURI、encodeURIComponent、decodeURI、decodeURIComponent怎么用”文章能帮助大家解决问题。

    encodeURI、encodeURIComponent、decodeURI、decodeURIComponent

    js 对文字进行编码涉及2个函数:encodeURI,encodeURIComponent,相应2个解码函数:decodeURI,decodeURIComponent

    用来编码和解码URI的

    统一资源标识符,或叫做 URI,是用来标识互联网上的资源(例如,网页或文件)和怎样访问这些资源的传输协议(例如,Http 或 FTP)的字符串

    encodeURI 和 decodeURI 函数操作的是完整的 URI;这俩函数的URI 中的任何保留字符都有特殊意义,所有不会编码它们。

    encodeURI主要用于直接赋值给地址栏时候:

    location.href=encodeURI("http://www.cnblogs.com/Tezml/");

    encodeURIComponent 和 decodeURIComponent 函数操作的是组成 URI 的个别组件;encodeURIComponent 的作用:将文本字符串编码为一个有效的统一资源标识符 (URI)。这俩函数假定任何保留字符都代表普通文本,所以必须编码它们,所以它们(保留字符)出现在一个完整 URI 的组件里面时不会被解释成保留字符了。

     原因:如果 username = 'a&foo=boo' 而不用 encodeURIComponent 的话,整个参数就成了 name=a&foo=boo, 这样 CGI 就获得两个参数 name 和 foo. 这不是我们想要的。

    javascript 里还有个同样功能的函数 encodeURI, 但是此方法不会对下列字符进行编码:":"、"/"、";" 和 "?"。

    传递参数时需要使用encodeURIComponent

    这样组合的url才不会被#等特殊字符截断。

    例如:

    <script language="javascript">document.write('<a href="http://passport.baidu.com/?loGout&aid=7& u='+encodeURIComponent(" rel="external nofollow"  rel="external nofollow" http://cang.baidu.com/bruce42")+'">退出</a& gt;');</script>
    <script language="javascript">document.write('<a href="http://passport.baidu.com/?logout&aid=7& u='+encodeURIComponent(" rel="external nofollow"  rel="external nofollow" http://cang.baidu.com/bruce42")+'">退出</a& gt;');</script>

    decodeURI()和decodeURIComponent()这两个函数可以对特定函数生成的密码字符串进行解密操作,就可以生成为未解密的字符串,比较实用,

    decodeURI()定义和用法

    decodeURI() 函数可对 encodeURI() 函数编码过的URI 进行解码。

    语法:decodeURI(URIstring)

    参数 描述:URIstring 必需。一个字符串,含有要解码的 URI 或其他要解码的文本。

    返回值:URIstring 的副本,其中的十六进制转义序列将被它们表示的字符替换。

    decodeURIComponent()定义和用法

    decodeURIComponent() 函数可对 encodeURIComponent() 函数编码的 URI 进行解码。

    语法:decodeURIComponent(URIstring)

    参数 描述:URIstring 必需。一个字符串,含有编码 URI 组件或其他要解码的文本。

    返回值:URIstring 的副本,其中的十六进制转义序列将被它们表示的字符替换。

    URL传参中的字符加密及解码方式

    encodeURI/decodeURI、encodeURIComponent/decodeURIComponent 这四个方法的用处

    都是用来编码和解码URI的。

    encodedURI

    函数通过将特定字符的每个实例替换为一个、两个、三或四转义序列来对统一资源标识符 (URI) 进行编码 (该字符的 UTF-8 编码仅为四转义序列)由两个 "代理" 字符组成)。encodeURI 自身无法产生能适用于HTTP GET 或 POST 请求的URI,例如对于 XMLHTTPRequests, 因为 "&", "+", 和 "=" 不会被编码,然而在 GET 和 POST 请求中它们是特殊字符。然而encodeURIComponent这个方法会对这些字符编码。

    decodeURI

    函数解码一个由encodeURI 先前创建的统一资源标识符(URI)或类似的例程。

    encodeURIComponent

    是对统一资源标识符(URI)的组成部分进行编码的方法。它使用一到四个转义序列来表示字符串中的每个字符的UTF-8编码(只有由两个Unicode代理区字符组成的字符才用四个转义字符编码)。转义除了字母、数字、(、)、.、!、~、*、'、-和_之外的所有

    decodeURIComponent

    方法用于解码由 encodeURIComponent 方法或者其它类似方法编码的部分统一资源标识符(URI)。

    若解码字符串包含%,则会报错

    js之encodeURI、encodeURIComponent、decodeURI、decodeURIComponent怎么用

    原因如下: 

    js之encodeURI、encodeURIComponent、decodeURI、decodeURIComponent怎么用

    escape/unescape函数对字符串进行编码。

    此函数使字符串具有可移植性,这样它就可以通过任何网络传输到任何支持 ASCII 字符的计算机。

    此函数对特殊字符进行编码,但以下字符除外: * @ - _ + . /

    关于“js之encodeURI、encodeURIComponent、decodeURI、decodeURIComponent怎么用”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识,可以关注编程网精选频道,小编每天都会为大家更新不同的知识点。

    --结束END--

    本文标题: js之encodeURI、encodeURIComponent、decodeURI、decodeURIComponent怎么用

    本文链接: https://lsjlt.com/news/357793.html(转载时请注明来源链接)

    有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

    猜你喜欢
    • js之encodeURI、encodeURIComponent、decodeURI、decodeURIComponent
      目录encodeURI、encodeURIComponent、decodeURI、decodeURIComponent用来编码和解码URI的传递参数时需要使用encodeURICom...
      99+
      2023-05-16
      js encodeURI js encodeURIComponent js decodeURI js decodeURIComponent
    • js之encodeURI、encodeURIComponent、decodeURI、decodeURIComponent怎么用
      这篇文章主要介绍“js之encodeURI、encodeURIComponent、decodeURI、decodeURIComponent怎么用”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“js之e...
      99+
      2023-07-06
    • java中encodeuricomponent怎么用
      在Java中使用URLEncoder.encode()方法来进行URL编码,该方法可以将字符串中的特殊字符转换为URL编码格式。示例...
      99+
      2024-03-07
      java
    • vue怎么使用encodeURI加密参数
      这篇文章主要介绍“vue怎么使用encodeURI加密参数”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“vue怎么使用encodeURI加密参数”文章能帮助大家解决问题。使用encodeURI加密参...
      99+
      2023-07-02
    • JS库之ParticlesJS怎么用
      这篇文章将为大家详细讲解有关JS库之ParticlesJS怎么用,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。particles.jsA lightweight Java...
      99+
      2024-04-02
    • js之slice()方法怎么使用
      slice()方法用于从数组中提取指定的元素,并返回一个新的数组。它接受两个参数,即开始索引和结束索引(可选)。语法:arr.sli...
      99+
      2023-09-13
      js
    • JS框架之vue.js怎么应用
      这篇文章主要讲解了“JS框架之vue.js怎么应用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“JS框架之vue.js怎么应用”吧!1.举个栗子//model层:// 通过exte...
      99+
      2023-07-04
    • js核心基础之闭包怎么用
      这篇文章主要介绍了js核心基础之闭包怎么用,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。具体如下:需求:有一个列表,当点击哪一行,则显示当前...
      99+
      2024-04-02
    • Vue3之怎么使用js实现动画
      这篇“Vue3之怎么使用js实现动画”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Vue3之怎么使用js实现动画”文章吧。概...
      99+
      2023-07-05
    • JS设计模式之策略模式怎么用
      小编给大家分享一下JS设计模式之策略模式怎么用,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!策略模式的概念引用:在软件开发中也常...
      99+
      2024-04-02
    • 两个JS之间的函数怎么互相调用
      这篇文章主要讲解了“两个JS之间的函数怎么互相调用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“两个JS之间的函数怎么互相调用”吧!两个JS之间的函数互相调用这个问题是我在工作中用到的一个方...
      99+
      2023-07-05
    • 怎么使用JS
      本篇内容主要讲解“怎么使用JS”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么使用JS”吧!1. Function 构造函数Function()构造函数虽然不...
      99+
      2024-04-02
    • json2.js怎么用
      这篇文章给大家分享的是有关json2.js怎么用的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。json2.js主要功能是做什么的?json2.js提供了json的序列化和反序列化...
      99+
      2024-04-02
    • 怎样之用JS给图片加口令
      今天就跟大家聊聊有关怎样之用JS给图片加口令,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。下面展示一种用JS给图片加口令的方法,可以将任意图片转化为html,输入正确的口令才能打开查...
      99+
      2023-06-17
    • js数组之间怎么进行连接
      这篇文章主要为大家展示了“js数组之间怎么进行连接”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“js数组之间怎么进行连接”这篇文章吧。首先我们来看一个小栗子。&...
      99+
      2024-04-02
    • js中typeof怎么用
      这篇文章主要介绍了js中typeof怎么用,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。typeoftypeof 对于原始类型来说,除了 n...
      99+
      2024-04-02
    • js闭包怎么用
      这篇文章主要为大家展示了“js闭包怎么用”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“js闭包怎么用”这篇文章吧。首先引用来自官网文档的定义:closure i...
      99+
      2024-04-02
    • js中return怎么用
      这篇文章将为大家详细讲解有关js中return怎么用,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。JavaScript是什么JavaScript是一种直译式的脚本语言,其解释器被称为JavaScript引...
      99+
      2023-06-14
    • js中replaceall怎么用
      小编给大家分享一下js中replaceall怎么用,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!JavaScript是什么JS是JavaScript的简称,它是一...
      99+
      2023-06-14
    • JS中URL.createObjectURL怎么用
      这篇文章主要为大家展示了“JS中URL.createObjectURL怎么用”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“JS中URL.createObjectURL怎么用”这篇文章吧。前言UR...
      99+
      2023-06-29
    软考高级职称资格查询
    编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
    • 官方手机版

    • 微信公众号

    • 商务合作