您的位置:首页 > Web前端 > JavaScript

try catch 错误处理 也可以用于解决浏览器兼容性问题 Error对象

2016-10-03 02:17 477 查看




<script>
try{
//            var abc = {};         //这里存放可能出现错误的代码
//            d;  //error
var err = new Error("An Error!!!");
throw err;                  //这里抛出一个err对象   就会被catch捕获到这个err对象 catch里面的e就是err对象  所以 catch里面那个e是必写的
}catch (e){
//这里存放错误执行后 应该要执行的代码  根据不同的错误类型
alert(e);   //这里会弹出错误信息  不同的错误会弹出不同的错误信息  例如not a function /  undefined

}finally {
//不管有没有错误发生,都始终执行
abc.attr = 66;
}

//额外的东西  把一个网址收藏到我的收藏夹中
var address = "http://www.baidu.com";
var  name = "我的收藏夹";
window.external.addFavorite(address,name);     //IE
window.sidebar.addPanel(name,address,"") ;         //火狐浏览器

//对象检测兼容性测试  发现出错了 火狐上可以 IE上不可以  这是IE自身实现上的问题在 怎么办呢  try catch就发挥作用了
function addFavorite(address,name) {
if(window.external && window.external.addFavorite){
window.external.addFavorite(address,name);
}else if(window.sidebar && window.sidebar.addPanel){
window.sidebar.addPanel(name,address,"")
}
}

//------try catch 实现上述兼容性----------
try{
window.external.addFavorite(address,name);
}catch (e){
try {
window.sidebar.addPanel(name,address,"") ;
}catch(e){}
}

</script>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐