如何解决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 举报,一经查实,本站将立刻删除。