url

Source: index.js:6

URL 处理工具函数


Static Methods

deleteUrlParam(url: string, paramNames: Array.<string>): string

从 URL 中删除指定查询参数,并返回新 URL。原始字符串不会被修改,hash 会被保留。

Parameters

  • url (string) — 要处理的 URL 字符串
  • paramNames (Array.<string>) — 要删除的非空参数名数组

Returns

  • string — 删除参数后的 URL 字符串

Throws

  • TypeError — 参数类型不符合要求时抛出

getUrlParam(url: string, paramName: string): string | null

获取 URL 查询字符串中的第一个指定参数值。

Parameters

  • url (string) — 要解析的 URL 字符串
  • paramName (string) — 参数名

Returns

  • string | null — 参数值;参数不存在时返回 null

Throws

  • TypeError — url 或 paramName 不是字符串时抛出

isUrl(value: *, protocols?: Array.<string>): boolean

判断字符串是否为指定协议的绝对 URL。

Parameters

  • value (*) — 待判断的值
  • protocols (Array.<string>, optional, default: "['http:','https:']") — 允许的协议列表,传空数组表示允许所有协议

Returns

  • boolean — URL 格式和协议均满足时为 true

Throws

  • TypeError — protocols 不是字符串数组时抛出

objToUrlParam( params: Record.<string, (string|number|boolean|null|undefined)>, ): string

将对象序列化为 URL 查询字符串。

Parameters

Returns

  • string — 不包含开头问号的查询字符串

Throws

  • TypeError — params 不是对象时抛出

urlParamToObj( url: string, ): Record.<string, (string|Array.<string>)>

将 URL 查询字符串转换为对象。重复参数保留为数组,单值参数保留为字符串。

Parameters

  • url (string) — 要解析的 URL 字符串

Returns

Throws

  • TypeError — url 不是字符串时抛出