javascript - javascript如何获取函数的返回值

标签 javascript function xmlhttprequest return

我正在尝试编写自己的 Xhr 包装器作为练习。我正在跨浏览器工作,我遇到了这段代码,它为所有浏览器 IE5.5+ 启动一个 xhr 对象

但我个人并不真正理解现在如何使用这个实例化的 xhr 对象。

请参阅下面的代码:

(function () {
    try {
        return new(this.XMLHttpRequest || ActiveXObject)('MSXML2.XMLHTTP.3.0');
    } catch (e) {}
})();

有人可以向我解释如何使用实例化的 xhr 对象吗?
也许对于我自己的学习经验来说,这个 (function (){})(); 是如何工作的

如果有不清楚的地方请告诉我,以便我进行澄清!

最佳答案

你的表达式是IIFE - 您定义一个函数并立即调用它。由于您没有将结果分配给任何内容,因此它会丢失。所以要么这样做

var req = (function () {
    try {
        return new(this.XMLHttpRequest || ActiveXObject)('MSXML2.XMLHTTP.3.0');
    } catch (e) {}
})();

或者(更易读)

function getRequest() {
    try {
        return new(this.XMLHttpRequest || ActiveXObject)('MSXML2.XMLHTTP.3.0');
    } catch (e) {}
}

var req = getRequest()

但不确定所有 ActiveXObject 内容。

关于javascript - javascript如何获取函数的返回值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56501399/

相关文章:

python - 这是获取输入数字平均值的好方法吗?

javascript - ajax post请求和form post请求有什么区别?

JavaScript 自动建议更新多个字段

javascript - raphael + mapSvg 淡出

javascript - 在用户离开或关闭页面之前保存 HTML5 视频 currentTime

function - 从 VS Code 部署 Azure Function

javascript - JS 函数就这么简单,超链接语法

javascript - XMLHttpRequest 仅在加载 xml 文件时在本地使用 Firefox

html - 克服移动 safari 的连接限制

javascript - 用于首选 React 类组件语法的 eslint 规则