我在处理查询参数时,了解到了URLSearchParams
。我正在使用它来形成这种类型的查询对象,
const x = {
a: 'hello World'
b: 23
c: ''
}
let params = new URLSearchParams(x);
console.log(params.toString()) // a=hello+World&b=23&c=
我不想使用 c=
这个参数名,因为它看起来不太好,而且我的 API 也不需要它。
所以,我希望得到这个结果 a=hello+World&b=23
(没有空查询字符串)。
但是,在 MDN Web Docs 上我找不到任何相关信息。
我该怎么做呢?
以下操作不起作用,因为它似乎直接改变了 params
,从而影响了 forEach
:
const x = {
a: 'hello World',
b: '',
c: ''
};
let params = new URLSearchParams(x);
params.forEach((value, key) => { // never reaches `c`
console.log(key, ' => ', value)
if (value == '')
params.delete(key);
});
console.log(params.toString());
v == ''
就可以了,对吧? - ezio4df