$.getJSON("https://ajax.googleapis.com/ajax/services/feed/find?v=1.0&q=codecademy&callback=?",
function(response) {
console.log(response.responseData);
$.each(response.responseData.entries, function (i,newsItem) {
$("#newsfeed").append("<li>"+newsItem.title+"</li>");
});
});
来自Codecademy的代码
在看完纸上的代码和手中的铅笔之后,我开始理解以下内容:
getJSON
函数responseData
对象response.responseData.entries
获得),我们调用一个附加到newsFeed
元素的函数,每个条目的标题但是,我无法理解(即使经过大量的试验和错误 - 删除一些代码并观察更改)将两个参数(i
和newsItem
)传递给$.each
的函数。这些论点究竟是什么意思,我们从哪里得到它们?它们的价值是什么?
编辑:抱歉提出了一个糟糕的问题。我确实去了文档,我确实查找了.each function,然而,在看到第一个例子之后我回来了,因为它显然没有传递给函数的两个参数。
答案 0 :(得分:1)
这些参数是$.each
方法的回调函数所需要的。
第一个参数(i
)是函数迭代的当前索引。对于i
,第一个元素的值为0,第二个元素的值为1
,等等......如果要迭代一个对象,则该值将是该项的当前键。
第二个参数是当前迭代的实际元素。
一个简单的例子:
$.each( [ "a", "b", "c" ], function( index, elem ){
console.log( index, elem );
});
这将产生以下输出:
0, "a"
1, "b"
2, "c"
答案 1 :(得分:1)
您可以查看此jQuery $.each
文档http://api.jquery.com/jquery.each/。第一个参数是索引,第二个是元素。