漫漫学习之路何其久远,只有抛弃浮躁,静下来看书方能有所收获.
写此文章仅为记录自身学习之路,文章内容不是固定的,每当我发现新的东西就会添加进去.文章也可能有错误,希望看到的兄弟能帮我指出,在此小弟谢谢了.
一。错误处理
使用错误处理能够更好的解决浏览器兼容性问题
语法介绍
例子1-1:
try{a;}//try里面是要检测的内容,(注意这里不能检测语法错误),如果有逻辑错误就会抛出一个Error对象
catch (e)
{alert('error!!')} //如果上面抛出了Error ,catch捕获Error对象,并执行{}的内容
finally{alert('must run!')}//不管有无错误。都会执行的代码
二。Error对象
1.构造Error和抛出异常
通过构造函数Error可以创建一个Error对象
var err = new Error('这个里面填错误内容');
也可以通过throw抛出一个错误
Throw err;//注意创建一个Error对象,不会产生错误,必须抛出才会导致浏览器报错
2.error对象的属性
message:这个Error对象的错误信息,也就是我们创建时填写的
例子2-1:
window.onload =function (){
try
{var err = newError('i am an error');
throw err;}
catch(e)
{alert(e.message);}
}
3.实战:收藏夹兼容性问题
(1)按检测对象的方法,我们会这么检测
例子3-1:
functionaddFav(address,name)
{
if(window.external&& window.external.addFavorite){
window.external.Favorite(address,name);//IE
}
elseif(window.sidebar && window.sidebar.addPanel){
window.sidebar.addPanel(name,address,'');//Firefox
}
}
window.onload =function (){
addFav('http://www.baidu.com','baidu');
}
但是用IE的时候,问题出现了(IE总是问题多),IE有external对象,但是浏览器提示没有addFavorite方法,
但是我通过alert('addFavorite' in window.external);
(2)用错误检测
functionaddFav2(address,name){
try{
window.sidebar.addPanel(name,address,'');
}
catch(e){
window.external.addFavorite(address,name);}
finally{
alert('end');
}
}
有没有发现整洁和简单