javascript - Javascript / React - 不重复自己的最佳方式
问题描述
当进行查询时,我正在使用此后退按钮,但每次 url 中有更多查询时,我都会不断重复自己的 if 语句。'(([query, value]' 是必需的,如果有更多,我必须添加另一个 if 语句。
let url= Object.entries(searchQuery).map(([query, value])=>{
return `${query.toString()}=${value.toString()}`;
});
}
if (url.length === 2){
return `/search?${url[0]}&${url[1]}`;
}
if (url.length === 3){
return `/search?${url[0]}&${url[1]}&${url[2]}`;
}
解决方案
你可以.join('&')
你的url
数组:
function createUrl(searchQuery) {
let url = Object.entries(searchQuery).map(([query, value]) => {
return `${query.toString()}=${value.toString()}`;
});
return `/search?${url.join('&')}`;
}
推荐阅读
- javascript - 当你有开始和结束日期时如何获得特定的日期
- python - Python 使用 RandInt 生成 3 位模式:语法错误
- c# - NLTK 包装类 NltkNet 支持 .NET 核心 Web 应用程序还是仅支持控制台应用程序?
- html - 如何在 SVG 中正确定位元素?
- html - 如何从 html 表单下拉选项中提取文本?
- ruby - 一个 Ruby 符号如何映射到多个值?
- scala - 如何在加特林脚本的下一个请求中传递相关值
- python - 如何从传递给python数据框的列表中删除空白和空值
- mysql - 将递归 MySQL 查询转换为 PostgreSQL
- java - 如何在映射中使用变量或在java中使用关联数组