【发布时间】:2016-12-07 19:38:29
【问题描述】:
此函数循环遍历对象数组,并将对象作为第二个参数。
如果firstname 值匹配,它将遍历对象数组,用作为第二个参数传入的对象替换它。
我确信使用 ES6 扩展运算符实现此功能有更好的方法,但我在实现它时遇到了麻烦。
const foo = (arr, obj) => {
const tempArray = arr.map((item, i) => {
if ( arr[i].name === obj.name ) {
return obj
} else {
return arr[i]
}
})
return tempArray
}
const arrOfObjx = [
{
"name": "Joe",
"favMovie": "Rambo"
},
{
"name": "Jane",
"favMovie": "The Matrix"
},
{
"name": "John",
"favMovie": "Star Wars"
}
]
const newJoe = {
"name": "Joe",
"favMovie": "ROCKY"
}
console.log(foo(arrOfObjx, newJoe ))
【问题讨论】:
标签: javascript arrays loops object ecmascript-6