Teal TealUI

查询字符串util/query

解析和格式化查询字符串(如:?a=1&b=2)

API

函数 描述
parseQuery(value, ...)(value:string, separator?:string, equal?:string):object

解析查询字符串(如“foo=1&goo=2&goo=3”)为对象。

参数 类型 描述 默认值
value* string
separator string "&"
equal string "="

返回值

类型:{ [key: string]: any; }

返回一个以每个查询参数名作为键、查询参数值作为值的新对象。同名的参数对应的值是一个数组。

示例

parseQuery("foo=1&goo=2&goo=3") // { foo: "1", goo: ["2", "3"] }

解析查询字符串(如“foo=1&goo=2&goo=3”)为对象。

formatQuery(obj, ...)(obj:any, separator?:string, equal?:string):string

格式化对象为查询字符串(如“foo=1&goo=2&goo=3”)。

参数 类型 描述 默认值
obj* any
separator string "&"
equal string "="

返回值

类型:string

返回格式化后的字符串。

示例

formatQuery({ a: "2", c: "4" }) // "a=2&c=4"
formatQuery({ a: [2, 4] }) // "a=2&a=4"

格式化对象为查询字符串(如“foo=1&goo=2&goo=3”)。

getQuery(name, ...)(name:string, url?:string):string

获取地址中指定的查询参数值。

参数 类型 描述 默认值
name* string
url string location.href

返回值

类型:string

返回查询参数值。如果找不到则返回 null。

示例

getQuery("foo", "?foo=1") // "1"
getQuery("goo", "?foo=1") // null

获取地址中指定的查询参数值。

setQuery(name, value, ...)(name:string, value:string, url?:string):string

设置地址中指定的查询参数值。

参数 类型 描述 默认值
name* string
value* string
url string location.href

返回值

类型:string

返回设置后的新地址。如果原参数不存在则添加到末尾。

示例

setQuery("foo", "1", "page.html") // "page.html?foo=1"
setQuery("foo", "2", "page.html?foo=1") // "page.html?foo=2"
setQuery("foo", null, "page.html") // "page.html"

设置地址中指定的查询参数值。

appendQuery(url, query)(url:string, query:string):string

在地址后添加请求参数。

参数 类型 描述 默认值
url* string
query* string

返回值

类型:string

返回已添加的新地址。

示例

appendQuery("index.html", "from=link") // "index.html?from=link"

在地址后添加请求参数。