📅  最后修改于: 2023-12-03 15:33:10.104000             🧑  作者: Mango
在 Node.js 中,可以使用 URL()
方法将 URL 字符串解析为 URL 对象。这个方法可以对 URL 进行解析、处理和操作。
new URL(input[, base])
其中,input
是要解析的 URL 字符串,base
是一个可选的 URL 字符串,用于指定上下文 URL。
下面是一个简单的例子,可以使用 URL()
方法解析 URL:
const { URL } = require('url');
const myURL = new URL('https://nodejs.org/dist/latest-v14.x/docs/api/url.html#url_the_whatwg_url_api');
console.log(myURL.host);
// 输出:nodejs.org
首先导入 Node.js 的 url
模块,然后调用 URL()
方法并传入要解析的 URL 字符串,最后可以使用 URL 对象的属性来访问 URL 的各种部分。
在上面的例子中,myURL.host
属性返回 URL 的主机名或 IP 地址("nodejs.org"),这是 URL 对象的一个属性。
以下是使用 URL()
方法创建的 URL 对象的一些常用方法和属性:
href
获取或设置 URL 对象的完整 URL。
console.log(myURL.href);
// 输出:https://nodejs.org/dist/latest-v14.x/docs/api/url.html#url_the_whatwg_url_api
toString()
在 URL 对象上调用 toString()
方法可以返回 URL 字符串。
console.log(myURL.toString());
// 输出:https://nodejs.org/dist/latest-v14.x/docs/api/url.html#url_the_whatwg_url_api
searchParams
获取或设置 URL 查询参数。
const searchParams = myURL.searchParams;
searchParams.append('newParam', 'hello');
console.log(searchParams.toString());
// 输出:'newParam=hello'
protocol
获取或设置 URL 的协议("https:")。
console.log(myURL.protocol);
// 输出:https:
host
获取或设置 URL 的主机名或 IP 地址("nodejs.org")。
console.log(myURL.host);
// 输出:nodejs.org
hostname
获取或设置 URL 的主机名("nodejs.org")。
console.log(myURL.hostname);
// 输出:nodejs.org
port
获取或设置 URL 的端口号("")。
console.log(myURL.port);
// 输出:
pathname
获取或设置 URL 的路径名和文件名("/dist/latest-v14.x/docs/api/url.html")。
console.log(myURL.pathname);
// 输出:/dist/latest-v14.x/docs/api/url.html
search
获取或设置 URL 的查询字符串("?#url_the_whatwg_url_api")。
console.log(myURL.search);
// 输出:?#url_the_whatwg_url_api
hash
获取或设置 URL 的片段标识符("#url_the_whatwg_url_api")。
console.log(myURL.hash);
// 输出:#url_the_whatwg_url_api
URL()
方法是 Node.js 中用于处理 URL 的基础方法之一。使用它能够轻松地解析和处理 URL,同时还可以扩展 URL 对象的属性和方法,使其具有更丰富更灵活的功能。