productcategory.js中关于map()遍历的疑问

来源:7-4 商品类别批量添加的前端开发

我心态好好哒

2017-11-14

由于不是很懂前端知识,在用jQuery 的 map()方法遍历时有了些疑惑

图1是老师之前教我们的写法,由于没有出错,我一直的理解是item是数组中的每一个元素,index是索引。

图2是这次课中,submit事件中map遍历的写法,起初我也是写map(item,index) 调试中发现productCategoryList无法获取值,起初并没考虑是map遍历的问题。后来尝试写成map(index,item)发现结果正确。

我查了下语法 为 .map(callback(index,domElement))。那么是不是说其实前一个才是index,后一个才是数组元素。

那为什么图一用map()前一个参数,图二用后一个参数呢?

http://img.mukewang.com/szimg/5a09c034000192ec07410201.jpg

http://img.mukewang.com/szimg/5a09c0340001482a09720304.jpg


写回答

2回答

翔仔

2017-11-14

好心态同学您好,很开心同学能对前端感兴趣,同学可以在chrome的console里调试,就会发现dataList和tempArr不是同一个东西,所以此map非彼map,index和item两者正好相反 前者是数组,后者是dom元素集合:)分别在map里面设置断点,然后分别刷新列表和添加个商品类别,鼠标移动到index以及item下,对比下就知道啦

0
1
我心态好好哒
非常感谢!
2017-11-15
共1条回复

慕码人204465

2017-11-19

map是javascript数组遍历生成另外一个数组的方法,主要参数有(item(遍历对象),index(下标),array(原数组))。

具体应用例子:

arraySample = [0,1,2,3,4];

var result = arraySample.map(function(item, index, array){

    return array.length - item;

})

result = [5,4,3,2,1];

1
1
翔仔
感谢同学的热心回复!
2017-11-19
共1条回复

Java双版本(SSM到SpringBoot)校园商铺全栈开发

SSM商铺V1.0,解决毕设痛点;SpringBoot商铺V2.0,满足工作刚需

5134 学习 · 8152 问题

查看课程