我不是JS大师,但有人可以帮我找到以下代码段中的无效量词错误吗?
感谢提前! -mprototype
function $_GET(q,s) {
s = s ? s : window.location.search;
var re = new RegExp( '&' + q + '(?:=([^&]*))?(?=&|$)' , 'i' );
return (s=s.replace(/^?/,'&').match(re)) ? (typeof s[1] == 'undefined' ? '' : decodeURIComponent(s[1])) : undefined;
}
答案 0 :(得分:1)
?
在正则表达式中具有特殊含义,特别是它使前面的项可选。如果你试图找到问号字符本身,你需要用反斜杠来逃避它。
function $_GET(q,s) {
s = s ? s : window.location.search;
var re = new RegExp( '&' + q + '(?:=([^&]*))?(?=&|$)' , 'i' );
return (s=s.replace(/^\?/,'&').match(re)) ? (typeof s[1] == 'undefined' ? '' : decodeURIComponent(s[1])) : undefined;
}