ES6 对象分配部分项
ES6 object assign partial items
我有一个js对象列表,如下所示:
actualVal = [{pId: a1, pVal: b1}, {pId: a2, pVal: b2}, ....]
我正在传递给我的函数,我使用 ES6 将其作为我的参考:
let { myVal } = actualVal;
这给了我这样的东西:
myVal = [{pId: a1, pVal: b1}, {pId: a2, pVal: b2}, ....]
ES6 中有没有办法将其作为:
myVal = [{id: a1, val: b1}, {id: a2, val: b2}, ....]
我可以遍历数组来执行此操作,但是有没有办法在不迭代的情况下映射它?谢谢!
更新:感谢大家的回答。那么哪一种是最有效的方法呢?
没有,但 lodash 的 mapKeys
函数可以帮助您做到这一点。此外,如果您正在考虑的话,let { myVal } = actualVal
不会创建数组的副本,因此无论如何您都需要以另一种方式处理它。
actualVal = [{pId: a1, pVal: b1}, {pId: a2, pVal: b2}, ....]
let newArr = actualVal.map((e, i) => {
return _.mapKeys(e, function (val, key) {
if (key === 'pId')
return 'id'
else if
// ...
}
你可以使用 map 像这样迭代你的数组
myVal.map( val => {return {id: val.pId, val: val.pVal}})
仅使用数组映射:
myVal = actualVal.map(function(obj) {
return {
id: obj.pId,
val: obj.pVal
};
});
相关文章:
- 为什么对象的属性在分配给对象时未定义
- 如何在JavaScript中将JSP请求属性转换为字符串并将其分配给对象
- 是否可以将已解析的承诺分配给对象的属性
- Javascript:分配给对象或数组原型会导致括号不起作用
- JS - 为每个 Dom 元素分配一个对象中的值
- 如何在将值分配给对象成员时执行函数
- 通过迭代数组将方法分配给对象
- JavaScript 将函数分配给对象属性
- 为什么无法使用 const 关键字分配 JavaScript 对象的常量属性
- ES6 对象分配部分项
- Javascript - 在变量声明中使用大括号将多个变量分配给对象属性
- Javascript 用于将名称值对分配给对象的简写
- 电子邮件字段在以角度分配空白对象时未重置
- 将承诺的值分配给对象方法
- 为什么不能访问分配jquery对象的函数内部的变量
- 如何将变量类型分配给对象中的变量
- 如何检查并将值分配给对象
- 将新属性分配给对象's使用JavaScript的属性From Variable
- 如何将密钥分配给对象Angularjs
- 使用名称空间将原型对象分配给对象中的匿名函数,这是未定义的