微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Javascript xmlHttpRequest对象检测与try..catch

如何解决Javascript xmlHttpRequest对象检测与try..catch

|| 在检查特定浏览器是否支持AJAX时,我通常要做的是对象检测:
if (window.XMLHttpRequest) 
{ 
    xhr = new XMLHttpRequest();
} 
else if (window.ActiveXObject)
{
    xhr = new ActiveXObject(\"Microsoft.XMLHTTP\");
}
但是,每当我看一看由更高级的开发人员编写的代码时,就更有可能看到try-catch块:
try {
   xhr = new ActiveXObject(\"Microsoft.XMLHTTP\");    //IE 
}
catch(e)    // if not IE
{
  xhr = new XMLHttpRequest(); 
}
我知道有人说try..catch速度较慢,但​​是,如果这仅是一个优先考虑的问题,是否有惯例/更多的“标准”方式来做到这一点?很久以前,当我在innerHTML(非标准)和DOM(标准)之间做出决定时,我也处于相同的情况。感谢您的时间。任何建议,将不胜感激。     

解决方法

        怎么样 xhr =新的XMLHttpRequest()||新的ActiveXObject(\“ Microsoft.XMLHTTP \”); 如果XMLHttpRequest失败,则首选XMLHttpRequest,它使用ActiveXObject(\“ Microsoft.XMLHTTP \”)。 更加优雅和干燥。     

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。