map和each返回值的区别
代码如下:
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>习题</title> </head> <body> <h1>筛选和遍历jQuery对象</h1> <ul> <li class="item1">item1</li> <li class="item2">item2</li> <li class="item3">item3</li> <li class="item4">item4</li> <li class="item5">item5</li> <li class="item6">item6</li> <li class="item7">item7</li> <li class="item8">item8</li> <li class="item9">item9</li> </ul> <script src="http://cdn.bootcss.com/jquery/1.12.4/jquery.js"></script> <script> $(function () { var eleArr1 = $('li').map(function(index,domElement){ return this.innerText; }); console.log(eleArr1.get()); }); $(function(){ var eleArr2 = $('li').each(function(index,domElement){ return this.innerText; }); console.log(eleArr2.get()); }) </script> </body> </html>
第25行-第30行使用的是map,成功的实现了题目的要求,打印出了如下数组:
["item1", "item2", "item3", "item4", "item5", "item6", "item7", "item8", "item9"]
而第31行-第36行使用的是each,打印结果却是
[li.item1, li.item2, li.item3, li.item4, li.item5, li.item6, li.item7, li.item8, li.item9]
请问,如果使用each,怎样才能打印出题目要求的结果?
54
收起
正在回答
2回答
创建一个新数组,将获得的项加入到数组中,打印出这个数组,就是跟效果图一样了。
前端小白入门系列课程
- 参与学习 人
- 提交作业 11218 份
- 解答问题 36713 个
从一个不会编程的小白到一个老司机是需要过程的,首先得入门,学习基础知识,然后才能进阶,最后再到精通,本专题是你走进前端世界的不二选择!
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星