我有一个JSON数组被返回,我想通过它来循环显示表中的数据:
{"confirmed":"362.53","not_confirmed":"9,403.87","payouts":{"confirmed":{"2023-04-05":36253},"submitted":{"2023-04-12":900,"2023-04-11":9600},"pending_submission":{"2023-04-13":897694,"2023-05-04":32193}}}
我尝试在 AJAX 调用中使用这个for循环,但在控制台中看到的只是Object object
$.ajax({
type: "GET",
url: ""
dataType: 'json',
success: function(data) {
for(var i in data.payouts) {
console.log(data.payouts[i]);
}
}
});
3条答案
按热度按时间bvuwiixz1#
在我看来,你的代码工作?
e0bqpujr2#
在
$.each()
函数中,代码为支出的每个嵌套属性向控制台记录一条消息,具体来说,它记录该嵌套对象的confirmed属性的值。尝试下面的片段
o7jaxewo3#
data.payouts
不是一个数组,它是一个包含一组键和值的对象。要迭代对象,可以使用Object
类中的方法(docs here:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object)。要迭代键和值,在每次迭代中获取它们,可以像这样使用
Object.entries()
:我使用
for..of
来获取值,而不是使用for..in
并获取Object.entries()
方法返回的数组中每个项的索引。请注意,每个条目中的值也是一个对象,因此如果要处理它们,需要对每个条目使用相同的逻辑。