【问题标题】:Callback function ajax, JS回调函数ajax,JS
【发布时间】:2021-02-09 12:30:30
【问题描述】:
const getData = (method, url, print) => {
    const ajax = new XMLHttpRequest();
    
    ajax.open(method, url)
    ajax.send();

    ajax.onload = function(){
        const result = JSON.parse(ajax.responseText)
        print(result)
    }
}

const print = () => {
    result.map((item) => {
        console.log(item.title)
    })
}


getData('GET', 'http://jsonplaceholder.typicode.com/posts', print)

但输出是“ReferenceError: XMLHttpRequest is not defined” 有人能帮我吗?谢谢

【问题讨论】:

  • 你的 JavaScript 执行的环境是什么?用浏览器?节点.js?壳牌?犀牛?
  • 我用一个节点来执行代码
  • 所以,node.js 不是浏览器。 XMLHttpRequest 仅在浏览器中可用。正如其他人在他们的答案中描述的那样,您可能需要其他一些方法来进行提取。顺便说一句,您的打印函数未能接收到结果参数。

标签: javascript ajax asynchronous


【解决方案1】:

XMLHttpRequest 是浏览器 JS 运行时提供的全局变量。

如果您收到参考错误,则说明您没有在浏览器中运行您的代码,需要寻找替代方案(例如,如果您使用的是 Node.js,则可以安装 the axios module from NPM)。

【讨论】:

  • @Lain — 现在是 2020 年,任何人尝试使用 IE 6 编写代码的可能性微乎其微。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-21
  • 1970-01-01
  • 1970-01-01
  • 2012-07-27
  • 2018-07-15
  • 1970-01-01
相关资源
最近更新 更多