在JavaScript中,获取URL参数可以通过以下几种方法实现:
- 使用
window.location.search
属性,然后通过substring
和indexOf
进行解析。 - 使用正则表达式来提取URL参数。
- 使用
URLSearchParams
对象(ES6+)。
下面是使用这些方法的示例代码:
- 使用
window.location.search
和字符串操作:
function getQueryParam(param) {
let searchString = window.location.search.substring(1); // 获取URL查询字符串
let params = searchString.split('&'); // 分割成单个参数
for (let i = 0; i < params.length; i++) {
let pair = params[i].split('='); // 分割键值对
if (pair[0] === param) {
return pair[1]; // 返回指定参数的值
}
}
return null; // 如果未找到参数,返回null
}
let value = getQueryParam('key'); // 调用函数获取参数值
- 使用正则表达式:
function getQueryParam(param) {
let result = new RegExp(param + '=([^&]*)').exec(window.location.search);
return result && decodeURIComponent(result[1]) || null; // 如果存在则解码并返回,否则返回null
}
let value = getQueryParam('key'); // 调用函数获取参数值
- 使用
URLSearchParams
对象(ES6+):
function getQueryParam(param) {
let urlParams = new URLSearchParams(window.location.search);
return urlParams.get(param); // 返回指定参数的值,如果不存在则返回null
}
let value = getQueryParam('key'); // 调用函数获取参数值
以上代码中,getQueryParam
函数接受一个参数名作为输入,返回该参数的值,如果参数不存在则返回null
。