Skip to content

url

[TOC]

索引

url

  • url.parse()(urlString, parseQueryString?, slashesDenoteHost?)废弃,用于解析 URL 字符串,并返回一个包含各个组成部分的 URL 对象。
  • url.fileURLToPath()( url ),用于将 file 协议的 URL 转换为对应的文件系统路径。

URL

属性

  • 与 Location 属性一致
  • hrefhttps://example.com:8080/path?q=1#hash,获取或设置完整的 URL。修改会触发页面跳转。
  • protocolhttps:,URL 的协议(含 :)。修改可能触发跳转。
  • hostnameexample.com,域名部分。修改会跳转到新域名。
  • port8080,端口号(字符串形式)。若无则为空。修改会跳转到新端口。
  • hostexample.com:8080,域名 + 端口(若端口非默认)。修改会跳转。
  • pathname/path/,路径部分(以 / 开头)。修改会跳转到新路径。
  • search?q=1,查询字符串(含 ?)。修改会重新加载页面。
  • hash#hash,哈希部分(含 #),用于页面锚点。修改不会重载页面,但会记录历史。
  • originhttps://example.com:8080只读,协议 + 域名 + 端口。
  • 特有属性
  • url.searchParamsURLSearchParams,返回专门用于操作 URL 查询参数的 URLSearchParams 对象(即 ? 后的键值对)。

方法

  • new URL()(urlString,baseUrlString?),用于创建并解析一个 URL 对象,提供对 URL 各组成部分的标准化访问和操作。
  • URL.createObjectURL()(object),用于为 BlobFile 对象生成临时 URL 的方法,允许在浏览器中直接引用本地文件或内存中的数据(如图片、视频、二进制流等)。
  • URL.revokeObjectURL()(objectURL),用于释放由 URL.createObjectURL() 生成的临时 URL 所占用的内存,避免内存泄漏。

URLSearchParams

方法

  • new URLSearchParams()(init?),创建一个专门用于操作 URL 的查询参数的实例。
  • params.append()(key, value),用于向 URL 的查询参数中添加一个新的键值对,即使键已存在也不会覆盖原有值,而是追加新的值。
  • params.delete()(key),用于删除 URL 查询参数中指定键的所有值
  • params.get()(key),用于从 URL 的查询参数中获取指定键的第一个值
  • params.set()(key,value),用于设置指定键的查询参数值。若键已存在,则覆盖其所有值;若不存在,则添加新的键值对。
  • params.has()(key),用于检查 URL 的查询参数中是否存在指定键
  • params.getAll()(key),用于从 URL 的查询参数中获取指定键的所有值(以数组形式返回)。
  • params.sort()(),用于按键名对 URL 的查询参数进行排序,并原地修改参数列表。
  • params.toString()(),用于将查询参数序列化为 URL 编码的字符串(即 ? 后的键值对部分)。
  • params.keys()(),用于获取 URL 查询参数中所有键的迭代器。它允许你遍历查询字符串中的所有键名。
  • params.values()(),用于获取 URL 查询参数中所有值的迭代器。它允许你遍历查询字符串中的所有参数值。
  • params.entries()(),用于获取 URL 查询参数中所有键值对的迭代器。它允许遍历查询字符串中的所有参数,并以 [key, value] 数组形式返回每个键值对。
  • params.forEach()(callback,thisArg?),用于遍历 URL 查询参数中的所有键值对,并对每个键值对执行回调函数。

url

url

parse()

url.parse()(urlString, parseQueryString?, slashesDenoteHost?)废弃,用于解析 URL 字符串,并返回一个包含各个组成部分的 URL 对象。

  • urlStringstring,要被解析的 URL 字符串。

  • parseQueryString?true |false

    • true:(),query 属性会被解析并转换成一个对象。
    • false:(默认),query 属性会保持为一个未解析的字符串。
  • slashesDenoteHost?true |false

    • true:(),第一个双斜杠之后直到下一个斜杠之前的字符串会被解析为 host
    • false:(默认),
  • 返回值:

  • urlObjectURL,(),返回一个 URL 对象,该对象包含以下属性:

    • href:完整的原始 URL。
    • protocol:URL 的协议部分,末尾包含冒号。
    • slashes:如果协议后面跟着两个斜杠(//),则为 true
    • host:完整的主机名,包括端口号(如果有)。
    • auth:URL 中的认证信息,通常是用户名和密码。
    • hostname:主机名,不包括端口号。
    • port:端口号(如果有)。
    • pathname:URL 的路径部分。
    • search:查询字符串部分,以问号开头。
    • path:路径和查询字符串的组合。
    • query:查询字符串,未解析的字符串或解析后的对象(取决于 parseQueryString 参数)。
    • hash:片段标识符部分,以井号开头。

fileURLToPath()

url.fileURLToPath()( url ),用于将 file 协议的 URL 转换为对应的文件系统路径。

  • url,(),一个表示文件 URL 的字符串或者是一个 URL 对象。如:file:///C:/path/to/file.txt

  • 返回值: 返回一个字符串,表示转换后的文件系统路径。如:C:\path\to\file.txt

URL

属性

  • 与 Location 属性一致
  • hrefhttps://example.com:8080/path?q=1#hash,获取或设置完整的 URL。修改会触发页面跳转。
  • protocolhttps:,URL 的协议(含 :)。修改可能触发跳转。
  • hostnameexample.com,域名部分。修改会跳转到新域名。
  • port8080,端口号(字符串形式)。若无则为空。修改会跳转到新端口。
  • hostexample.com:8080,域名 + 端口(若端口非默认)。修改会跳转。
  • pathname/path/,路径部分(以 / 开头)。修改会跳转到新路径。
  • search?q=1,查询字符串(含 ?)。修改会重新加载页面。
  • hash#hash,哈希部分(含 #),用于页面锚点。修改不会重载页面,但会记录历史。
  • originhttps://example.com:8080只读,协议 + 域名 + 端口。
  • 特有属性
  • url.searchParamsURLSearchParams,返回专门用于操作 URL 查询参数的 URLSearchParams 对象(即 ? 后的键值对)。

方法

  • new URL()(urlString,baseUrlString?),用于创建并解析一个 URL 对象,提供对 URL 各组成部分的标准化访问和操作。
  • URL.createObjectURL()(object),用于为 BlobFile 对象生成临时 URL 的方法,允许在浏览器中直接引用本地文件或内存中的数据(如图片、视频、二进制流等)。
  • URL.revokeObjectURL()(objectURL),用于释放由 URL.createObjectURL() 生成的临时 URL 所占用的内存,避免内存泄漏。

URLSearchParams

方法

  • new URLSearchParams()(init?),创建一个专门用于操作 URL 的查询参数的实例。
  • params.append()(key, value),用于向 URL 的查询参数中添加一个新的键值对,即使键已存在也不会覆盖原有值,而是追加新的值。
  • params.delete()(key),用于删除 URL 查询参数中指定键的所有值
  • params.get()(key),用于从 URL 的查询参数中获取指定键的第一个值
  • params.set()(key,value),用于设置指定键的查询参数值。若键已存在,则覆盖其所有值;若不存在,则添加新的键值对。
  • params.has()(key),用于检查 URL 的查询参数中是否存在指定键
  • params.getAll()(key),用于从 URL 的查询参数中获取指定键的所有值(以数组形式返回)。
  • params.sort()(),用于按键名对 URL 的查询参数进行排序,并原地修改参数列表。
  • params.toString()(),用于将查询参数序列化为 URL 编码的字符串(即 ? 后的键值对部分)。
  • params.keys()(),用于获取 URL 查询参数中所有键的迭代器。它允许你遍历查询字符串中的所有键名。
  • params.values()(),用于获取 URL 查询参数中所有值的迭代器。它允许你遍历查询字符串中的所有参数值。
  • params.entries()(),用于获取 URL 查询参数中所有键值对的迭代器。它允许遍历查询字符串中的所有参数,并以 [key, value] 数组形式返回每个键值对。
  • params.forEach()(callback,thisArg?),用于遍历 URL 查询参数中的所有键值对,并对每个键值对执行回调函数。