gpt4 book ai didi

javascript - 分别使用哪一个?

转载 作者:行者123 更新时间:2023-11-28 12:41:19 24 4
gpt4 key购买 nike

据我了解,以下两种用途各自执行相同的操作。其中一个比另一个更受青睐吗?我的目标是使用返回的数据创建一个表。谢谢

$.get('getList.php',
function (data)
{
$.each(data, function(i, value) {console.log(value);})
$(data).each(function(){console.log(this);});
for(var i=0; i<data.length; i++) {console.log(data[i]);}
for (i in data) {console.log(data[i]);}
},'json');

最佳答案

鉴于 data 将是一个 JS 对象,而不是您应该使用的 DOM 元素:

$.each(data, ...

因为 $.each() 旨在作为任何对象或数组的通用迭代器。

$(data).each(... 语法旨在迭代 jQuery 对象中包含的 DOM 元素。如果您创建一个包含 data 的 jQuery 对象并且 data 不是一个数组我想你会发现 $(data).each(... 将运行一次返回整个对象的迭代而不是一次迭代每个属性。如果 data 是一个数组,它将迭代元素,但这并不是真正的预期用途。

如果 data 不是数组,则使用 for (i in data) 就可以了(如果它是数组,则应使用标准 for 循环不是 for..in),但既然您使用的是 jQuery,那么您最好还是坚持使用 $.each() 除非存在性能问题。

关于javascript - 分别使用哪一个?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12024265/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com