NodeJS - urlObject.search 属性



urlObject 的 NodeJS urlObject.search 属性指定包含前导 ASCII 问号 (?) 字符的 URL 的完整查询字符串段。此属性不执行查询字符串的解码。

让我们看一下下面的示例 URL,以了解查询字符串段的位置。

URL 为“https://user:pass@example.com:80000/pa/th?q=val#hash”。

  • “?q=val” 是查询字符串段。

语法

以下是 NodeJS urlObject.search 属性的语法


 urlObject.search

参数

此属性不接受任何参数。

返回值

此属性检索 URL 的整个查询字符串段。

如果提供的 URL 中存在查询字符串段,则 NodeJS urlObject.search 属性将返回该段。

在以下示例中,我们尝试从给定的 URL 中获取查询字符串段。


const url = require('url');
let address = 'https://user:pass@site.com:80000/pa/th?q=val#hash';
let result = url.parse(address, true);
console.log(result.search);

输出

以下是上述代码的输出

?q=val

如果提供的 URL 不包含查询字符串段,则搜索属性将返回 null。


const url = require('url');
let address = 'https://user:pass@site.com:80000/pa/th#hash';
let result = url.parse(address, true);
console.log(result.search);

输出

正如我们在下面的输出中看到的,search 属性返回 null,因为给定的 URL 不包含查询字符串段。

null