在JavaScript中将forEach函数转换为map函数

在JavaScript中将forEach函数转换为map函数,javascript,for-loop,foreach,ecmascript-6,Javascript,For Loop,Foreach,Ecmascript 6,下面是我当前使用的代码forEach(): 一, 二, 三, 是否可以将所有forEach()函数转换为map()函数?用法 foreach:它迭代列表并对每个列表成员应用一些具有副作用的操作(例如:将每个列表项保存到数据库) 映射:它迭代一个列表,转换该列表的每个成员,并返回另一个与转换后的成员大小相同的列表(例如:将字符串列表转换为大写) 参考资料 在web上找到此文件,请尝试 var m=newmap(); m、 一套(1,“汽车”); m、 套装(2辆,“自行车”); m、 设置(“颜

下面是我当前使用的代码
forEach()

一,

二,

三,

是否可以将所有
forEach()
函数转换为
map()
函数?

用法

foreach:它迭代列表并对每个列表成员应用一些具有副作用的操作(例如:将每个列表项保存到数据库)

映射:它迭代一个列表,转换该列表的每个成员,并返回另一个与转换后的成员大小相同的列表(例如:将字符串列表转换为大写)

参考资料


在web上找到此文件,请尝试

var m=newmap();
m、 一套(1,“汽车”);
m、 套装(2辆,“自行车”);
m、 设置(“颜色”,2);
m、 集合({x:1},3);
m、 forEach(函数(项、键、mapObj){
document.write(item.toString()+“
”); }); 文件。写(“
”);
文件编写(m.get(2))不清楚您试图实现什么,因为您对对象进行了访问,并且只更改了对象的属性,所以没有多大区别。当你使用map时,你必须添加
返回字段
。想让它更具功能,比如:array1.map(field=>xxxxxx)@KevinHu我知道你想把
forEach
转换成
map
,但你想在循环中实现什么呢?第一个和第三个很容易做到,但第二个可能不合适。那么,用例是什么?您试图实现什么?函数emailClients(clients){clients.filter(isClientActive).forEach(email)}函数isClientActive(client){var\u clientRecord=database.lookup(client);return{u clientRecord.isActive();}我应该这样更改吗?
// loop with assignment
userForm.forEach(field => {
    field.value = ''
})
// if array1 has field which array2 have, assign it
array1.forEach(field => {
    if (Object.keys(array2).indexOf(field.name) > -1) {
      field.value = array2[field.name]
    }
})
array1.forEach(field => {
    field.shouldShow = false
    field.start = moment(invoice.start).format('YYYY/MM/DD')
    field.end = moment(invoice.end).format('YYYY/MM/DD')
    // ..brabrabra asignment
})