(简单详细)javascript中new url()属性,轻松解析url地址

简介: (简单详细)javascript中new url()属性,轻松解析url地址



背景

我们在日常开发中经常会遇到要对url中的参数进行修改和新增,但是自己手动每次敲就会导致代码很麻烦,且不易维护

前言

以前写过两次次解析url的并且对url的应用场景做了深层挖掘 (个人感觉,没有这个帖子好用,因为以前是正则表达式来进行的,但是思路对下面的方法同样适用)


JS解析url中的参数__揽的博客-CSDN博客

(巨好使,详细,解析URl,URl自定义传参)js URl中快速自定义传参,并且实现参数解析 修改 和新增,替换功能_自定义url协议 传参__揽的博客-CSDN博客


new URL()

首先写一个假的地址(q=URLUtils.searchParams&topic=api)相当于当前的window.location.href

const urlParams = new URL(window.location.href);//将字符串变成url对象
urlParams.searchParams.has("topic") === true; // true //判断url是否存在这个key值
urlParams.searchParams.get("topic") === "api"; // true //获取这个key值的value
urlParams.searchParams.getAll("topic"); // ["api"] //获取url所有的key
urlParams.searchParams.get("foo") === ""; // true //key值为空的情况
urlParams.searchParams.append("topic", "webdev"); //url追加一个key-value
urlParams.searchParams.toString(); // "q=URLUtils.searchParams&topic=api&topic=webdev"
//将参数对象转为字符串并且进行了拼接
urlParams.searchParams.set("topic", "More webdev"); //设定key-value
urlParams.searchParams.toString(); // "q=URLUtils.searchParams&topic=More+webdev"
urlParams.searchParams.delete("topic"); //删除key-value
urlParams.searchParams.toString(); // "q=URLUtils.searchParams"

博主絮叨

这个方法比前两个博客中的正则更实用,但是前两个博客的思路一定可以多看看

目录
相关文章
|
5天前
|
JavaScript 前端开发 UED
深入解析JavaScript原生操作DOM技术
【4月更文挑战第22天】本文深入探讨JavaScript原生DOM操作技术,包括使用`getElement*`方法和CSS选择器获取元素,借助`createElement`与`appendChild`动态创建及插入元素,修改元素内容、属性和样式,以及删除元素。通过掌握这些技术,开发者能实现页面动态交互,但应注意避免过度操作DOM以优化性能和用户体验。
|
5天前
|
前端开发 JavaScript 编译器
深入解析JavaScript中的异步编程:Promises与async/await的使用与原理
【4月更文挑战第22天】本文深入解析JavaScript异步编程,重点讨论Promises和async/await。Promises用于管理异步操作,有pending、fulfilled和rejected三种状态。通过.then()和.catch()处理结果,但可能导致回调地狱。async/await是ES2017的语法糖,使异步编程更直观,类似同步代码,通过事件循环和微任务队列实现。两者各有优势,适用于不同场景,能有效提升代码可读性和维护性。
|
10天前
|
域名解析 网络协议 Linux
TCP/IP协议及配置、IP地址、子网掩码、网关地址、DNS与DHCP介绍
TCP/IP协议及配置、IP地址、子网掩码、网关地址、DNS与DHCP介绍
|
19天前
【超实用】Angular如何修改当前页面网页浏览器url后面?param1=xxx&param2=xxx参数(多用于通过浏览器地址参数保存用户当前操作状态的需求),实现监听url路由切换、状态变化。
【超实用】Angular如何修改当前页面网页浏览器url后面?param1=xxx&param2=xxx参数(多用于通过浏览器地址参数保存用户当前操作状态的需求),实现监听url路由切换、状态变化。
|
1月前
|
域名解析 缓存 网络协议
探索Qt 网络编程:网络地址与服务类全解析
探索Qt 网络编程:网络地址与服务类全解析
56 0
|
1月前
|
Python
URL解析函数
URL解析函数。
21 1
|
1月前
|
JavaScript 前端开发 IDE
JavaScript 中的 structuredClone():详尽解析
您是否知道,现在 JavaScript 中有一种原生的方式可以深拷贝对象?
|
2月前
|
域名解析 弹性计算 网络协议
DNS服务器问题之翻译为 TCP/IP 地址如何解决
DNS服务器是负责将域名转换为IP地址的服务,它是互联网上实现域名解析的关键基础设施;本合集将探讨DNS服务器的工作原理、配置方法和常见问题处理,帮助用户理解和优化DNS服务的使用。
38 7
|
2月前
|
JavaScript 前端开发 区块链
最新视频连接解析地址
最新视频连接解析地址
28 0
|
2月前
|
前端开发 JavaScript BI
JavaScript的过滤大师:深度解析Filter用法
JavaScript的过滤大师:深度解析Filter用法
69 0

推荐镜像

更多