当前位置: 首页 > news >正文

【js】链接中有多余的怎么取出参数值

https://pq.equalearning.net/assessment/379208869278126080?userId=23ebb&origin=https://www.equalearning.net&fname=I'm&lname=happy

在上面的例子中,fname=I’m,其中单引号被转义为', 而如果使用下面的代码,因为在URL中,&符号是一个特殊字符,用于分隔不同的参数。所以当试图获取fname参数的值时,URLSearchParams对象会在遇到第一个&符号时停止
所以获取fname的值得到的是 I而不是 “I’m”

let url = 'https://pq.equalearning.net/assessment/379208869278126080?userId=23ebb&origin=https://www.equalearning.net&fname=I'm&lname=happy';
url = decodeURIComponent(url);
let params = new URLSearchParams((new URL(url)).search);console.log(params.get('fname')); // 输出 "I"

就算使用了decodeURIComponent函数,得到的还是‘I’
因为链接中的'不是URI编码的字符,而是HTML实体

在JavaScript中,您可以使用DOMParser API来解码HTML实体

function decodeHtml(html) {var txt = document.createElement("textarea");txt.innerHTML = html;return txt.value;
}let url = 'https://pq.equalearning.net/assessment/379208869278126080?userId=23ebb&origin=https://www.equalearning.net&fname=I'm&lname=happy';
url = decodeHtml(url);
let params = new URLSearchParams((new URL(url)).search);console.log(params.get('fname')); // Outputs "I'm"

在上面的代码中,首先使用decodeHtml函数对URL中的HTML实体进行解码,该函数创建一个临时的textarea元素,并使用其innerHTML属性对HTML实体进行解码。然后,我们创建一个URL对象,并使用URLSearchParams对象来解析查询字符串并获取fname参数的值。

请注意,此解决方案需要DOM环境,因此它可以在浏览器中工作,但在没有DOM实现的Node. js环境中则不行。

相关文章:

【js】链接中有多余的怎么取出参数值

https://pq.equalearning.net/assessment/379208869278126080?userId23ebb&originhttps://www.equalearning.net&fnameIm&lnamehappy在上面的例子中,fnameI’m,其中单引号’被转义为, 而如果使用下面的代码,因为在UR…...

Verdi_traceX and autotrace

Verdi_traceX and autotrace Trace X From nWave/nTrace of from the Teporal Flow View. Show Paths on Flow ViewShow Paths on nWave 若Waveform中有X态,鼠标右键会有Trace X的选项; 会自动打开Temporal Flow View窗口,展示对应路径&am…...

安卓逆向 - 某严选app sign算法还原

本文仅供学习交流,只提供关键思路不会给出完整代码,严禁用于非法用途,若有侵权请联系我删除! 目标app: 5ouN5ouN5Lil6YCJMy45LjY 目标接口:aHR0cHM6Ly9hcGkubS5qZC5jb20vYXBp 一、引言 1、本篇分析某二手交易平台 …...

arcgis数据采集与拓扑检查

1、已准备好一张配准好的浙江省行政区划图,如下: 2、现在需要绘制湖州市县级行政区划。需要右击文件夹新建文件地理数据库,如下: 其余步骤均默认即可。 创建好县级要素数据集后,再新建要素类,命名为县。 为…...

【前端 | CSS】滚动到底部加载,滚动监听、懒加载

背景 在日常开发过程中,我们会遇到图片懒加载的功能,基本原理是,滚动条滚动到底部后再次获取数据进行渲染。 那怎么判断滚动条是否滚动到底部呢?滚动条滚动到底部触发时间的时机和方法又该怎样定义? 针对以上问题我…...

word将mathtype公式批量转为latex公式

最近,由于工作学习需要,要将word里面的mathype公式转为latex公式。 查了查资料,有alt\的操作,这样太慢了。通过下面链接的操作,结合起来可以解决问题。 某乎:https://www.zhihu.com/question/532353646 csd…...

docker-compose部署nacos 2.2.3

1、编写docker-compose.yml文件 version: "3.1" services:nacos:restart: alwaysimage: nacos/nacos-server:v2.2.3container_name: nacosenvironment:- NACOS_AUTH_ENABLEtrue- MODEstandalone- NACOS_AUTH_TOKEN8b92c609089f74db3c5ee04bd7d4d89e8b92c609089f74db…...

软件测试52讲-学习笔记

测试基础知识篇(11讲) 01 你真的懂测试吗?从“用户登录”测试谈起 测试用例设计框架 基于功能性需求和非功能性需求思考: 功能性需求使用等价类划分、边界值分析、错误推断法设计用例 非功能性需求考虑安全(信息的保存…...

【ARM 嵌入式 编译系列 4 -- GCC 编译属性 __read_mostly 详细介绍】

文章目录 __read_mostly 介绍__read_mostly 在 linux 中的使用.data.read_mostly 介绍 __read_mostly 介绍 __read_mostly 是一个在Linux内核编程中用到的宏定义,这是一个gcc编译器的属性,用于告诉编译器此变量主要用于读取,很少进行写入&am…...

Maven在IDEA2021版本中全局配置(一次配置处处生效)

前言 我们在开发中,Maven是必不可少的,但是每次都需要设置一遍Maven的仓库和settings.xml。真的是心累,今天教大家全局配置一下。再也不要每次项目都配了,Maven还经常出问题。 解决方案 友情提示:小编的IDEA版本为2…...

名侦探番外——Arduino“炸弹”引爆摩天大楼

名侦探番外——Arduino“炸弹”引爆摩天大楼 硬件准备1.材料准备2.模块介绍 电路设计1.硬件接线 程序设计1.设计思路2.部分程序3.功能优化 总结 好久不见,童鞋们!小编突然想到很久以前看的柯南剧场版——计时引爆摩天大楼的情景,对剧里的“炸…...

自适应AI chatgpt智能聊天创作官网html源码

我们致力于开发先进的自适应AI智能聊天技术,旨在为用户提供前所未有的聊天体验。通过融合自然语言处理、机器学习和深度学习等领域的顶尖技术,我们的智能聊天系统能够准确理解用户的需求并给出相应的回应。 我们的自适应AI智能聊天系统具备以下核心特点…...

防抖,节流

概念 防抖(debounce):类似法师技能读条,读条没完再按技能就会重新读条,在触发后的n秒内只会执行一次,若在这n秒内重复触发则重新计算 节流(throttle):连续发生的事件在n秒内只执行一次函数 参考 【前端面试必问】—…...

【Linux】多线程1——线程概念与线程控制

文章目录 1. 线程概念什么是线程Linux中的线程线程的优点线程的缺点线程的独立资源和共享资源 2. 线程控制Linux的pthread库用户级线程 📝 个人主页 :超人不会飞)📑 本文收录专栏:《Linux》💭 如果本文对您有帮助&…...

【Maven】SpringBoot项目使用maven-assembly-plugin插件多环境打包

SpringBoot项目使用maven-assembly-plugin插件多环境打包 1.创建SpringBoot项目并在pom.xml文件中添加maven-assembly-plugin配置 <!-- 多环境配置 --><profiles><!-- 开发环境 --><profile><id>dev</id><properties><prof…...

指令集_基础

指令集-基础 一、提示过程1,文章摘要2&#xff0c;数学问题求解 二、角色提示三、多范例提示 一、提示过程 指导人工智能&#xff0c;执行任务的过程&#xff0c;称为提示过程。向AI 提供一组指令&#xff08;提示&#xff09;&#xff0c;然后它执行任务 1,文章摘要 例如&a…...

学习Vue:数据绑定的基本概念

在 Vue.js 中&#xff0c;Vue 实例是您构建应用程序的核心。它允许您将数据和界面连接起来&#xff0c;实现动态的数据绑定&#xff0c;使您的应用程序能够根据数据的变化自动更新界面。让我们来深入了解 Vue 实例与数据绑定的基本概念。 Vue 实例与数据绑定 什么是 Vue 实例&…...

Python 装饰器 - 推导式(列表推导式) - 迭代器 - 生成器 - 闭包

目录 推导式 1、列表推导式&#xff08;用得最多的&#xff09; 给你一个列表&#xff0c;求所有数据的绝对值 列表推导式跟if运算 打印50以内能被3整除的数的平方&#xff08;filter&#xff09;&#xff08;if的使用&#xff09; 找到1000以内开平方的结果是整数的数&am…...

【大数据】Flink 详解(二):核心篇 Ⅲ

Flink 详解&#xff08;二&#xff09;&#xff1a;核心篇 Ⅲ 29、Flink 通过什么实现可靠的容错机制&#xff1f; Flink 使用 轻量级分布式快照&#xff0c;设计检查点&#xff08;checkpoint&#xff09;实现可靠容错。 30、什么是 Checkpoin 检查点&#xff1f; Checkpoint …...

Jmeter性能测试系列-性能测试需求分析

性能测试需求分析 性能测试需求分析与传统的功能测试需求有所不同&#xff0c;功能测试需求分析重点在于从用户层面分析被测对象的功能性、易用性等质量特性&#xff0c;性能测试则需要从终端用户应用、系统架构设计、硬件配置等多个纬度分析系统可能存在性能瓶颈的业务。 性…...

源代码之下的硅基启示录——Claude Code“核泄漏”事件的深度剖析与时代回响

引言 公元2026年3月30日&#xff0c;一个看似平常的春日&#xff0c;硅基世界却迎来了一场史无前例的地震。 一家以“安全”为最高信条的AI公司&#xff0c;以一种最荒诞的方式&#xff0c;亲手打开了潘多拉的魔盒。Anthropic&#xff0c;这家估值高达3800亿美元的AI新贵&#…...

从SolidWorks到ROS:六自由度机械臂URDF模型转换实战指南

1. 从SolidWorks到ROS的桥梁&#xff1a;URDF模型转换概述 当你费尽心思在SolidWorks中完成了六自由度机械臂的三维建模&#xff0c;看着那些精密的齿轮和连杆在软件中流畅转动时&#xff0c;脑海中可能已经浮现出它在ROS环境中大展身手的场景。但问题来了&#xff1a;如何让这…...

卡尔曼滤波调参实战:如何用MATLAB让MPU6050的加速度数据更‘听话’?

卡尔曼滤波调参实战&#xff1a;如何用MATLAB让MPU6050的加速度数据更‘听话’&#xff1f; 当你在MATLAB中第一次看到MPU6050的原始加速度数据时&#xff0c;那些疯狂跳动的曲线可能会让你怀疑人生。别担心&#xff0c;这不是传感器坏了&#xff0c;而是现实世界本就充满噪声…...

终极指南:如何用Captum快速理解PyTorch模型的决策逻辑

终极指南&#xff1a;如何用Captum快速理解PyTorch模型的决策逻辑 【免费下载链接】captum Model interpretability and understanding for PyTorch 项目地址: https://gitcode.com/gh_mirrors/ca/captum 在当今人工智能快速发展的时代&#xff0c;PyTorch已成为深度学习…...

2025年9月中国电子学会青少年软件编程(图形化)等级考试试卷(一级)答案 + 解析

25年3月一级真题在线测评&#xff1a;http://jw.52coding.site/s/mwIJDR 青少年软件编程&#xff08;图形化&#xff09;等级考试试卷&#xff08;一级&#xff09; 一、单选题(共25题&#xff0c;共50分) 1.当前舞台背景为最后一个背景“背景3”&#xff0c;使用“下一个背景”…...

如何用QtScrcpy实现低延迟Android投屏?5个技巧带你解锁高效多设备控制体验

如何用QtScrcpy实现低延迟Android投屏&#xff1f;5个技巧带你解锁高效多设备控制体验 【免费下载链接】QtScrcpy Android实时投屏软件&#xff0c;此应用程序提供USB(或通过TCP/IP)连接的Android设备的显示和控制。它不需要任何root访问权限 项目地址: https://gitcode.com/…...

计算机毕业设计springboot智慧工地管理系统 基于SpringBoot的建筑施工现场数字化管理平台 SpringBoot驱动的工程现场人员考勤与薪资结算系统

计算机毕业设计springboot智慧工地管理系统 &#xff08;配套有源码 程序 mysql数据库 论文&#xff09; 本套源码可以在文本联xi,先看具体系统功能演示视频领取&#xff0c;可分享源码参考。 在当今的建筑工程领域&#xff0c;科技的进步正在以前所未有的速度改变着传统的工作…...

5分钟快速上手:UNTRUNC视频修复工具终极指南

5分钟快速上手&#xff1a;UNTRUNC视频修复工具终极指南 【免费下载链接】untrunc Restore a damaged (truncated) mp4, m4v, mov, 3gp video. Provided you have a similar not broken video. 项目地址: https://gitcode.com/gh_mirrors/unt/untrunc 你是否曾经因为相机…...

intv_ai_mk11作品分享:会议纪要提炼、政策白话解读、技术术语通俗化实例

intv_ai_mk11作品分享&#xff1a;会议纪要提炼、政策白话解读、技术术语通俗化实例 1. 模型简介与核心能力 intv_ai_mk11是一款基于Llama架构的中等规模文本生成模型&#xff0c;特别擅长处理各类文本转换和解释任务。这个开箱即用的解决方案已经完成本地部署&#xff0c;用…...

Llama-3.2-3B入门指南:Ollama部署详解,从安装到生成第一段文字

Llama-3.2-3B入门指南&#xff1a;Ollama部署详解&#xff0c;从安装到生成第一段文字 1. 认识Llama-3.2-3B&#xff1a;轻量级多语言文本生成专家 Llama-3.2-3B是Meta公司推出的开源大语言模型&#xff0c;属于Llama 3.2系列中的3B参数版本。这个模型特别适合需要快速响应和…...