jQuery $().每个vs $ .each()vs for循环

kub*_*506 0 each jquery loops for-loop

我是JS和Query的新手,所以我认为这是一个非常简单的任务,我想只需要从$ .each()$().each()和for循环的测试重写"循环".这是我的代码.

var tab = ["John", "Steve", "Ben", "Damon", "Ian"],
    $list = $('#list');

$.each(tab,function(index,value){
    $list.append("<li>"+ value+ "</li>");
});
Run Code Online (Sandbox Code Playgroud)

第二个和第三个循环不起作用:

tab.each(function(index){
    $list.append("<li>"+ tab[index] + "</li>");
});
Run Code Online (Sandbox Code Playgroud)

for (var i,len=tab.length;i<len;i++) {
    $list.append("<li>"+ tab[i]+ "</li>");
}
Run Code Online (Sandbox Code Playgroud)

怎么了?

Pra*_*man 5

正确初始化for循环时出错:

for (var i,len=tab.length;i<len;i++) {
//-------^ - Missing inital value.
    $list.append("<li>"+ tab[i]+ "</li>");
}
Run Code Online (Sandbox Code Playgroud)

改成:

for (var i=0,len=tab.length;i<len;i++) {
    $list.append("<li>"+ tab[i]+ "</li>");
}
Run Code Online (Sandbox Code Playgroud)

第二个不起作用,因为,tab不是一个迭代的jQuery对象!:)语法$.each是:

$.each(dataArray, function() { });
Run Code Online (Sandbox Code Playgroud)

或者,如果您有一个DOM jQuery对象:

$(Selector).each(dataArray, function() { });
Run Code Online (Sandbox Code Playgroud)