指定 none 时设置默认 url 参数值

Set default url parameter value when none is specified

我在互联网上找到了从 JavaScript 获取 URL 参数的答案:

function getURLParameter(name) {
    return decodeURIComponent((new RegExp('[?|&]' + name + '=' + '([^&;]+?)(&|#|;|$)').exec(location.search)||[,""])[1].replace(/\+/g, '%20'))||null
}

我想知道有没有办法修改这个,所以当没有指定URL个参数时,预设值将成为参数值。

例如。 index.html?value=1 会 return 1,

如果我将默认值设置为 2,并且有人键入 index.html 变量值将为 2。

添加参数以指定缺少密钥时您想要的默认值:

function getURLParameter(name, _default) {
    var value = decodeURIComponent((new RegExp('[?|&]' + name + '=' + '([^&;]+?)(&|#|;|$)').exec(location.search)||[,""])[1].replace(/\+/g, '%20')) || null
    return value !=null ? value : _default;
}

(仅供参考,此实现将 ; 视为分隔符:k=a;b 将 return a,这有点奇怪。)