JS获取URL中的Query参数

2023-11-16

需求描述

获取 URL 中的 Query 参数,例如:

https://www.example.com/test.html?a=param1&b=param2

代码片段

实现一

使用URLSearchParams对象,兼容性见Can I use

const urlString = 'https://www.example.com/test.html?a=param1&b=param2';
const urlObj = new URL(urlString);
const [a, b] = urlObj.searchParams.values();

实现二

function parseSearchParams(searchParamsString){
    return searchParamsString.split('&').reduce((searchParams, curKV)=>{
        const [k, v] = curKV.split('=').map(decodeURIComponent);
        searchParams[k] = v;

        return searchParams;
    }, {});
}

关注公众号“web开发圈”或扫描二维码
web开发圈二维码
发送“大会”,即可获取最新前端重要大会的视频资料。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

JS获取URL中的Query参数 的相关文章

  • Go语言模拟实现简单的区块链

    一 创建项目 按照Go语言最佳实践的思路 在工作空间下的src目录下创建 github com hangzhou huxin blokcchain目录作为我们的项目目录 然后用GoLand工具选中这个项目并打开 二 项目源码 先在项目目录下
  • Android弹簧动画 Rebound实战

    转载请注明出处 http blog csdn net ym4189 article details 77099881 前言 之前需要做一个弹簧效果的动画 网上一看 大家都用Rebound框架 这里简单写一下 rebound是facebook

随机推荐

  • 前端 Leader 如何做好团队规划?阿里内部培训总结公开

    行成于思 毁于随 韩愈 在阿里从一线前端工程师到技术 TL Team Leader 也三年有余了 最重要最难的就是做规划 你可能会遇到如下几个问题 业务压力巨大 前端是瓶颈 如何做合适的规划 如何提高规划的成功率 规划的雷区是什么 如何寻找
  • NUC980开源项目33-自动分配设备号和设备节点

    上面是我的微信和QQ群 欢迎新朋友的加入 本来是为点灯准备的驱动 不过现在还没正常操作IO口 就是分配节点和设备号 驱动代码 include
  • 关于c++的批量注释快捷键使用及调整

    在接触c 编译的时候 想大批量的给一些代码注释 但一行一行注释又显得麻烦 在vs中是支持批量注释的 我用的是vs2013 下面是vs批量注释的方法 两个组合的按键方法 批量注释 Ctrl K Ctrl C 取消注释 Ctrl K Ctrl
  • 企业架构

    一 架构能力建设和架构治理 为确保架构功能在企业中能够被成功运用 企业需要通过建立适当的组织结构 流程 角色 责任和技能来实现其自身的企业架构能力 这正是TOGAF的架构能力框架 Architecture Capability Framew
  • 基于数据驱动的电动车电池数据分析(一)

    基于数据驱动的电动车电池数据分析 一 欢迎关注笔者的微信公众号 笔者过去一年多的时间都在国内一家头部新能源企业实习 主要参与一些数据分析和平台研发的工作 在工作中积累了一些数据分析的经验 其中新能源领域比较多的是一些化工生产 智能制造方面的
  • CMAKE——set()函数及常用变量名

    set 将一个 CMAKE 变量设置为给定值 set
  • PAT乙级 1029旧键盘 python

    题目 思路 将输入与输出逐位对比 将不相等的记录下来即可 代码 input input print input bad key 记录坏掉的键盘 upper 将所有小写字符转为大写 lower 将所有大写转为小写 print position
  • wait notify正确使用方式

    wait notify正确使用方式 假设 当线程 Thread03 在1 100中找出77并输出后 Thread01 输出所有1 100中的奇数 当线程 Thread03 在1 100中找出88并输出后 Thread02 输出所有1 100
  • 使用expect实现scp远程复制文件

    expect安装 yum install y expect expect基本命令了解 spawn 交互程序开始后面跟命令或者指定程序 expect 获取匹配信息匹配成功则执行expect后面的程序动作 send exp send 用于发送指
  • 水仙花数的求解

    话不多说 直接给各位上小菜 package com znzz JavaTest public class FlowerTest 思路 水仙花数 指一个 n gt 3 n位正整数 其每位的数值的n次方之和等于本身 例如 153 1 3 5 3
  • 如何治理 Electron 版本淘宝直播应用崩溃?

    经过几个月的努力 基于Electron框架开发的新版淘宝直播推流软件终于上线了 随之而来的就是线上用户反馈的各种问题 其中最影响用户体验的当属应用崩溃问题了 当应用程序出现未 catch 的异常时就会发生崩溃 本文介绍了客户端应用崩溃的处理
  • UnicodeDecodeError: ‘utf-8‘ codec can‘t decode byte 0xd7 in position 2: invalid continuation byte问题

    报错提示如下 self disease wds i strip for i in open self disease path encoding UTF 8 if i strip File C Users luckyli anaconda3
  • 嵌入式学习笔记---VIM常用操作和命令

    嵌入式学习笔记 VIM常用操作和命令 写在前面 这里我使用的开发环境是Windows下的Cygwin软件 如果不想下载虚拟机什么的 用这个日常开发完全够 具体的下载安装教程网上一大把 可以参考其他博主 一些配置文件 1 定义 Cygwin是
  • Oracle 进程结构

    Oracle进程结构 进程是动态创建的 完成任务后就消亡 而程序是静态的实体 程序是可以复制 编辑的 进程强调的是执行过程 而程序仅仅是指令的有序集合 进程在内存中 程序在外存中 ORACLE分为用户进程和ORACLE进程 l 用户进程 当
  • 可以解释一下什么是补码吗?

    补码是一种用来表示二进制数的方法 也是计算机中常用的数值表示方式之一 在补码中 正数的二进制表示与原码相同 而负数的二进制表示则是将对应正数的二进制表示按位取反后加上1 例如 在8位补码中 3的二进制表示为11111101 对应的正数是00
  • 输入3个整数,按从小到大的顺序输出

    include
  • mysql每秒最多能插入多少条数据 ? 死磕性能压测

    2019独角兽企业重金招聘Python工程师标准 gt gt gt 前段时间搞优化 最后瓶颈发现都在数据库单点上 问DBA 给我的写入答案是在1W 机械硬盘 左右 联想起前几天infoQ上一篇文章说他们最好的硬件写入速度在2W后也无法提高
  • MobileNet V3 网络结构的原理与 Tensorflow2.0 实现

    文章目录 介绍 MobileNet V3 的创新 1 SE模块的加入 2 修改尾部结构 3 修改通道数量 4 改变激活函数 SE 模块中 BottleNeck 模块中 MobileNet V3 网络结构 1 MobileNet V3 Lar
  • transformer包中的bert预训练模型的调用详解

    文章目录 Bert调用 安装transformers BertTokenizer BertModel Bert调用 2018年的10月11日 Google发布的论文 Pre training of Deep Bidirectional Tr
  • JS获取URL中的Query参数

    需求描述 获取 URL 中的 Query 参数 例如 https www example com test html a param1 b param2 代码片段 实现一 使用URLSearchParams对象 兼容性见Can I use