这是我在foreach循环中的函数,用于创建具有属性和值作为单词及其计数的对象,但我想根据es6将其转换为地图
function harmlessRamsonNote(noteText,magazineText)
{
var noteArr = noteText.split(' ');
var magazineArr = magazineText.split(' ');
var magazineObj = {};
magazineArr.forEach(word => {
if(!magazineObj[word])
{
magazineObj[word] = 0;
}
magazineObj[word]++;
});
console.log(magazineObj);
};
答案 0 :(得分:2)
magazineArr.map((word, index, array) => {
!magazineObj[word] ? magazineObj[word] = 0 : magazineObj[word]++;
})
答案 1 :(得分:2)
map
将为每个项目返回一个新项目。相反,您可以使用reduce
。
const magazineObj = magazineArr.reduce((acc,word) => {
acc[word] = (acc[word] || -1) + 1;
}, {});