是TypeError还是应该使用try / catch?

时间:2014-02-23 21:51:01

标签: javascript error-handling

我有这个简单的AJAX-Class,除了Internet Explorer< 6(我不太在意)之外的所有浏览器都可以正常工作:

var Ajax = function(url, callback) {
    this.xhr = window.XMLHttpRequest ? new XMLHttpRequest() : new ActiveXObject("Microsoft.XMLHTTP");
    this.xhr.open('GET', url, true);
    this.xhr.onreadystatechange = function() {
        if (this.readyState === 4 && this.status === 200) {
            if (typeof callback === "function") {
                callback(this.responseText);
            }
        }
    }
    this.xhr.send();
};

所以,我的问题是,添加try/catch是否有任何理由或优势可以阻止IE中的TypeError< 6?像这样:

    // ...
    try {
        this.xhr = window.XMLHttpRequest ? new XMLHttpRequest() : new ActiveXObject("Microsoft.XMLHTTP");
    } catch(e) {
        return;
    }
    // ...

或者可以冒这个错误吗?它是否会阻止执行更多代码或显示丑陋的警告或任何类型的警告?

0 个答案:

没有答案