对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,只是新建一个新的数组。