JavaScript URL编码与解码

一、URL编码与解码概述

在Web开发中,有时需要将字符串传递给URL。由于某些字符会在URL中具有特殊含义(例如?、&、=等),因此需要进行URL编码以确保这些字符被正确地处理。同时也需要对传入的URL进行解码,以将之前被编码的字符转换回原始状态。

二、JavaScript中的URL编码

在JavaScript中,可以使用encodeURI()encodeURIComponent()函数对URL进行编码。

1. encodeURI()

encodeURI()函数可对整个URI进行编码,除了ASCII字母、数字、符号$-_.+!*'()外,其他的字符都将返回UTF-8编码的字符。

var url = "https://www.example.com/?a=b#c";
var encoded = encodeURI(url);
console.log(encoded); // 输出:https://www.example.com/?a=b#c

2. encodeURIComponent()

encodeURIComponent()函数可对URI中的每一段进行编码,包括ASCII字母、数字以及一些特殊字符,例如:冒号、斜杠、问号、井号等。

var url = "https://www.example.com/?a=b#c";
var encoded = encodeURIComponent(url);
console.log(encoded); // 输出:https%3A%2F%2Fwww.example.com%2F%3Fa%3Db%23c

三、JavaScript中的URL解码

在JavaScript中,可以使用decodeURI()decodeURIComponent()函数对URL进行解码。

1. decodeURI()

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

var encoded = "https://www.example.com/?a=b#c";
var decoded = decodeURI(encoded);
console.log(decoded); // 输出:https://www.example.com/?a=b#c

2. decodeURIComponent()

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

var encoded = "https%3A%2F%2Fwww.example.com%2F%3Fa%3Db%23c";
var decoded = decodeURIComponent(encoded);
console.log(decoded); // 输出:https://www.example.com/?a=b#c

四、代码示例

下面是一个JavaScript中URL编码和解码的完整代码示例:

var url = "https://www.example.com/?a=b#c"; // 要编码的URL

// URL 编码
var encodedURI = encodeURI(url);
var encodedURIComponent = encodeURIComponent(url);

console.log(encodedURI); // 输出:https://www.example.com/?a=b#c
console.log(encodedURIComponent); // 输出:https%3A%2F%2Fwww.example.com%2F%3Fa%3Db%23c

// URL 解码
var decodedURI = decodeURI(encodedURI);
var decodedURIComponent = decodeURIComponent(encodedURIComponent);

console.log(decodedURI); // 输出:https://www.example.com/?a=b#c
console.log(decodedURIComponent); // 输出:https://www.example.com/?a=b#c

原创文章,作者:KVAAJ,如若转载,请注明出处:https://www.506064.com/n/369648.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
KVAAJKVAAJ
上一篇 2025-04-13 11:45
下一篇 2025-04-13 11:45

相关推荐

  • Python解码URL

    本文将从以下几个方面对Python解码URL进行详细阐述:URL编码的作用和原理、Python urllib库解码URL的基本用法、Python手动解码URL的方法、特殊字符在UR…

    编程 2025-04-28
  • Python URL解码

    在Web开发过程中,URL编码和解码是一个很常见的问题。本文将会详细介绍Python中对URL的解码方法。 一、URL编码与URL解码 URI(Uniform Resource I…

    编程 2025-04-28
  • 使用JavaScript日期函数掌握时间

    在本文中,我们将深入探讨JavaScript日期函数,并且从多个视角介绍其应用方法和重要性。 一、日期的基本表示与获取 在JavaScript中,使用Date对象来表示日期和时间,…

    编程 2025-04-28
  • JavaScript中使用new Date转换为YYYYMMDD格式

    在JavaScript中,我们通常会使用Date对象来表示日期和时间。当我们需要在网站上显示日期时,很多情况下需要将Date对象转换成YYYYMMDD格式的字符串。下面我们来详细了…

    编程 2025-04-27
  • Python 中文转URL编码

    本文将从以下几个方面详细阐述Python中实现中文转URL编码的方法及注意事项。 一、URL编码概述 URL编码也称为百分号编码,是一种将URL中的非ASCII字符转换成“%”后加…

    编程 2025-04-27
  • HTTPs请求URL里的参数会加密吗?

    是的,HTTPS请求URL里的参数会加密。HTTPS是HTTP协议的加密版本,在传输数据时,使用了SSL/TLS协议对传输内容进行加密,保证数据在传输过程中不会被篡改、窃取。下面我…

    编程 2025-04-27
  • JavaScript中修改style属性的方法和技巧

    一、基本概念和方法 style属性是JavaScript中一个非常重要的属性,它可以用来控制HTML元素的样式,包括颜色、大小、字体等等。这里介绍一些常用的方法: 1、通过Java…

    编程 2025-04-25
  • CloneDeep函数在Javascript开发中的应用

    一、CloneDeep的概念 CloneDeep函数在Javascript中是一种深层克隆对象的方法,可以在拷贝对象时避免出现引用关系。使用者可以在函数中设置可选参数使其满足多种拷…

    编程 2025-04-25
  • JavaScript中的Object.getOwnPropertyDescriptors()

    一、简介 Object.getOwnPropertyDescriptors()是JavaScript中一个非常有用的工具。简单来说,这个方法可以获取一个对象上所有自有属性的属性描述…

    编程 2025-04-25
  • JavaScript保留整数的完整指南

    JavaScript是一种通用脚本语言,非常适合Web应用程序开发。在处理数字时,JavaScript可以处理整数和浮点数。在本文中,我们将重点关注JavaScript如何保留整数…

    编程 2025-04-25

发表回复

登录后才能评论