URLSearchParams 接口
URLSearchParams 接口定义了很多个用来处理 URL 参数串的方法。
基本使用方法如下
var paramsString = "q=URLUtils.searchParams&topic=api" // location.search.slice(1)var searchParams = new URLSearchParams(paramsString);searchParams.has('topic') // truesearchParams.get('topic') // "api"searchParams.getAll('topic') // ["api"]searchParams.get('foo') // null,注意Firefox返回空字符串searchParams.set('foo', 2);searchParams.get('foo') // 2searchParams.append('topic', 'webdev');searchParams.toString() // "q=URLUtils.searchParams&topic=api&foo=2&topic=webdev"searchParams.append('foo', 3);searchParams.getAll('foo') // [2, 3]searchParams.delete('topic');searchParams.toString() // "q=URLUtils.searchParams&foo=2&foo=3"
URLSearchParams 还有三个方法返回迭代器对象:
keys() 遍历所有参数名
values() 遍历所有参数值
entries() 遍历所有参数的键值对
URLSearchParams实例可以当作POST数据发送,所有数据都会URL编码。
fetch('https://example.com/api', { method: 'POST', body: params}).then(...)
DOM 的 a 元素节点的 searchParams 属性,就是一个 URLSearchParams 实例。
var a = document.createElement('a');a.href = 'https://example.com?filter=api';a.searchParams.get('filter') // "api"
URLSearchParams 还可以与 URL 接口结合使用。
var url = new URL(location);var foo = url.searchParams.get('foo') || 'somedefault';
关键字:JavaScript
版权声明
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处。如若内容有涉嫌抄袭侵权/违法违规/事实不符,请点击 举报 进行投诉反馈!