我找到了这段代码;
navigator.appVersion.match(/MSIE ([\d.]+)/)[1];
用于检测浏览器版本。此代码适用于以下 IE 8,但不适用于谷歌浏览器。谷歌浏览器中的错误说;
未捕获的类型错误:无法读取 null 的属性“1”
指向这段代码所在的行;
navigator.appVersion.match(/MSIE ([\d.]+)/)[1];
知道如何解决这个问题吗?
只是为了弄清楚我在这里要完成的是检测浏览器版本:
var version = navigator.appVersion.match(/MSIE ([\d.]+)/)[1];
if(version <= 8.0)
{
execute code;
}
在 IE 中一切正常,但在 google chrome 中出现错误:
未捕获的类型错误:无法读取 null 的属性“1”
指向这段代码所在的行;
navigator.appVersion.match(/MSIE ([\d.]+)/)[1];
最佳答案
匹配
can return null
如果正则表达式没有找到任何东西。所以你必须首先获得匹配并检查你是否匹配。试试这个:
var ieMatches = navigator.appVersion.match(/MSIE ([\d.]+)/);
var isIE = !!ieMatches[1];
关于javascript - RegExp 未捕获类型错误 : Cannot read property '1' of null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24158986/