javascript - 如何使用 URLSearchParams 仅删除具有相同键的多个键值对之一?
问题描述
我有一个这种形式的网址:https://www.example.com?tag[]=mountain&tag[]=hill&tag[]=pimple
现在我想删除其中一个,比如说tag[]=hill
. 我知道,我可以使用正则表达式,但我URLSearchParams
用来添加这些,所以我也想用它来删除它们。不幸的是,该delete()
函数删除了所有具有相同密钥的对。
有没有办法只删除一个特定的键值对?
解决方案
做这样的事情:
const tags = entries.getAll('tag[]').filter(tag => tag !== 'hill');
entries.delete('tag[]');
for (const tag of tags) entries.append('tag[]', tag);
推荐阅读
- c# - 如何减慢滑块值
- c# - Azure Functions - 无法加载文件或程序集“AzureFunctions.Autofac.Shared”
- asynchronous - 在线程结束之前等待异步日志记录完成 slf4j/log4j2
- android - Android Kotlin 将 Activity 解析成 fun
- django - Django 应用程序
- microservices - 如何成功地将特使路由到我的第二个服务?
- rabbitmq - 芹菜花重启后不显示以前运行的任务
- javascript - 查找特定的子元素并更改类名
- node.js - 无法通过 npm 安装乳液
- javascript - 如何关联两个输入字段?