依次执行传给他的几个方法,直到有一个成功返回,在写浏览器兼容性代码的时候,可能会很有用。下面是我原来写的一段JS代码,用Try.these()改造一下。原来的代码(这段代码是创建一个XMLHttpRequest对象)
function newXMLHttpRequest()
{
if(window.ActiveXObject)
{
isIE=true;
try {
//xmlhttp
return new ActiveXObject("Msxml2.XMLHTTP");
} catch (e1) {}
try {
//xmlhttp
return new ActiveXObject("Microsoft.XMLHTTP");
} catch (e2) {}
}else
{
isIE=false;
return new XMLHttpRequest();
}
alert("初始化xmlHTTP对象出现异常");
return false;
}
修改以后的代码:
function newXMLHttpRequest()
{
return Try.these(
function(){return new ActiveXObject("Msxml2.XMLHTTP");},
function(){new ActiveXObject("Microsoft.XMLHTTP");},
function(){return new XMLHttpRequest();}
);
return false;
}
改造以后代码变得相当的简洁。
3643

被折叠的 条评论
为什么被折叠?



