前端学习笔记(zepto或jquery)——对li标签的相关操作(三)
对li标签的相关操作——八种方式遍历li标签并获取其值
$("ul>li").forEach(function(item,index){ alert(index+":"+ item.innerHTML); });
$("ul>li").each(function(index,item){ alert(index+":"+ item.innerHTML); });
$("ul>li").each(function(index){ alert(index+":"+$(this).html()); });
$('ul>li').filter(function(index){ alert(index+":"+$(this).html()); })
$('ul>li').map(function(index,item){ alert(index+":"+ item.innerHTML); });
$("ul>li").map(function(index){ alert(index+":"+$(this).html()); });
$.grep($("ul>li").get(), function(item,index){ alert(index + ":" + item.innerHTML); });
$.grep($("ul>li").get(), function(item){ alert(item.innerHTML); });
注:filter没有两个参数的,forEach没有一个参数的
其中一个重要的区别是,each返回的是原来的数组,并不会新创建一个数组。而map方法会返回一个新的数组。
如果在没有必要的情况下使用map,则有可能造成内存浪费。
使用each时,改变的还是原来的items数组,而使用map时,不改变items,只是新建一个新的数组。