javascript - 如何从Json中获取数据

标签 javascript jquery json ajax

我目前正在学习 AJAX 技术。

在 Chrome 控制台中,当我键入 jsonObject.responseText 时,我会在控制台中获取所有数据,但是当我在我的 .js 文件中执行相同操作以将其打印到控制台(或 HTML 元素)它在控制台中显示 "undefined"

JSON 对象来自:

https://jsonplaceholder.typicode.com/users

JavaScript 代码:

var jsonObject = $.ajax({
url: "https://jsonplaceholder.typicode.com/users",
dataType: "json"
});
console.log(jsonObject.responseText);

最佳答案

AJAX - 异步 JavaScript 和 XML。 这意味着数据是在单独的线程中异步获取的。

var jsonObject = $.ajax({ url: "https://jsonplaceholder.typicode.com/users", dataType: "json" });

console.log(jsonObject.responseText);

您的 console.log 在 $.ajax 实际完成获取数据之前执行。因此 jsonObject 是未定义的。当您在控制台中执行相同的 $.ajax 时,此时数据已存在于 jsonObject 中,这与以前不同。

您需要提供一个成功回调,该回调会在返回响应时执行。

var jsonObject = $.ajax({ 
    url: "https://jsonplaceholder.typicode.com/users", 
    dataType: "json"
}).done(function(res) {
    console.log(res)
});

关于javascript - 如何从Json中获取数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46268813/

相关文章:

javascript - 在javascript中检查数组对象的所有属性值是否相同

javascript - 动态添加和删除复选框输入字段

c# - 反序列化 json 字符串以获得多个结果

java - MOXy反序列化异常: A descriptor with default root element was not found in the project

json - 你能用 JSON 做减法吗?

javascript - 任务从未定义 : Moving from gulpV3 to gulpV4

javascript - 禁用第一个选项的动态附加选择菜单会自动选择第二个选项

javascript - angularjs 中的 ui-view 和 ionic 中的 ion-nav-view 有什么区别

javascript - 在创建事件中动态设置 jQuery ui slider 值

jquery - Joomla 3 + Bootstrap 3 - 单击时折叠的导航栏跳跃