javascript - 使用 js `map` 形成一个新的扁平对象
问题描述
我不确定map
语法。
我试图result score
从原始对象中获取作为新对象的一部分。
filteredResults.push(currentResults
.map(({ item, result }) => ({
...item,
resultScore,
result: {
...result,
name:
!Array.isArray(result.name) ?
result.name
: result.name
.filter(({ '@language': lang }) => !negLanguagesParam.includes(lang))
}
}))
您如何阅读此语法?
它不遵循API 语法。
For each
项目in
当前结果 modify ...
这是什么...
意思,我应该如何正确使用它?
您将如何在新对象中添加resultScore
下一个?name
原始对象数组:
我希望它会变成:
更新
我认为这些评论解释了我在寻找什么:
filteredResults.push(currentResults
.map(({ allOther, resultScore, result }) => ({
...allOther,
result: {
...result, //shallow copy the object
resultScore, //add new memebr1
name: //add new memebr2
!Array.isArray(result.name) ?
result.name
: result.name
.filter(({ '@language': lang }) => !negLanguagesParam.includes(lang)) //({}) for taking a specific named attribute
}
}))
解决方案
推荐阅读
- typescript - 使用 Typescript 从对象中获取值
- vb.net - 使用 backgroundworker 时强制转换无效
- c# - C# - 从线程更新 windows 窗体元素
- javascript - 如何检查javascript数组是否包含具有特定值的属性,如果是则返回true
- java - 由已分配的 ByteString 支持的高效 okio 源?
- matlab - 如何在matlab中重写多个for循环以优化速度?
- python - 如何与python并行读取两个文件?
- javascript - foreach中的异步/等待不等待
- javascript - 如何用括号之间的多个值解决 JS Promises?
- sql - 如何每年生成自定义唯一密钥