老师我对于forEach还有疑问
来源:3-9 Map的应用
扶耳摩兔
2021-07-28 11:30:59
const m = new Map([
[p1,{
color:'red',
backgroundColor:'yellow',
fontSize:'40px'
}],
[p2,{
color:'green',
backgroundColor:'pink',
fontSize:'40px'
}],
[p3,{
color:'blue',
backgroundColor:'orange',
fontSize:'40px'
}]
]);
m.forEach((propObj,elem) => {
for(const p in propObj){
elem.style[p] = propObj[p];
}
})
forEach的参数里面,propObj是当前遍历到的p1,p2,p3元素对吧,这个elem的位置正常来讲不应该是index索引的值吗,为什么这指的是DOM元素?请老师解答,我理解的部队还请老师详细讲解一下forEach相关知识点。
1回答
同学你好,propObj代表的是{},不是p元素

forEach遍历数组,回调函数中第二个参数为索引。但是在map中,索引代表的是key,可以输出m看看


forEach中第一个参数代表是value,第二个参数代表的是key,记住这种使用方式即可。
所以会使用for in遍历propObj,然后给每个p元素设置样式。
祝学习愉快!
相似问题