【问题标题】:Why the url first parameter is not being considered in Javascript?为什么在 Javascript 中不考虑 url 第一个参数?
【发布时间】:2023-01-30 18:37:26
【问题描述】:

const url = new URLSearchParams('https://example.com?q1=1&q2=2');
console.log(url.has('q3')) // returns false as expected
console.log(url.has('q2')) // returns true as expected
console.log(url.has('q1')) // returns false as NOT expected

为什么会这样?

【问题讨论】:

    标签: javascript query-string url-parameters urlsearchparams


    【解决方案1】:

    URLSearchParams 构造函数,如果传递了一个字符串,则期望该字符串是一个请求参数而不是完整的网址。

    q1没有出现,因为你的第一个参数是https://example.com?q1

    const url = new URLSearchParams('https://example.com?q1=1&q2=2');
    console.log([...url.entries()]);

    如果要解析完整的 URL,请使用 URL 构造函数。

    const url = new URL('https://example.com?q1=1&q2=2');
    console.log(url.searchParams.has('q3'))
    console.log(url.searchParams.has('q2'))
    console.log(url.searchParams.has('q1'))

    【讨论】:

      猜你喜欢
      • 2017-04-26
      • 2018-05-14
      • 2017-03-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-09-21
      • 1970-01-01
      相关资源
      最近更新 更多