ant*_*twp 3 javascript try-catch
我正在研究关于本地存储的Dive Into HTML 5教程,并且遇到了这段代码:
function supports_html5_storage() {
try {
return 'localStorage' in window && window['localStorage'] !== null;
} catch (e) {
return false;
}
}
Run Code Online (Sandbox Code Playgroud)
我理解关于return 'localStorage' in window等等的部分,但我不明白为什么需要在这里尝试catch语句?简单地写下面的内容是不够的?
function supports_html5_storage(){
return 'localStorage' in window && window['localStorage']!==null;
}
Run Code Online (Sandbox Code Playgroud)
顺便说一下:我(有点)知道try/catch的目的,我只是想知道我们可能期待什么样的异常?
如果您的浏览器支持HTML5存储,则全局窗口对象上将有一个localStorage属性.如果您的浏览器不支持HTML5存储,则localStorage属性将是未定义的.由于旧版Firefox中存在一个不幸的错误,如果禁用cookie,此测试将引发异常,因此整个测试都包含在try..catch语句中.
以上文字复制自:http://diveintohtml5.info/detect.html#storage