javascript - 在对象javascript数组中推送元素
问题描述
我有一个带有对象和孩子的对象数组,孩子可以有元素
let array = {
account: "account 1",
children: [
{
account: "1",
},
{
account: "2",
},
],
total: {
debit: 96,
credit:96,
},
},
{
account: "account 2",
children: [
{
account: "1",
},
],
total: {
debit: 45,
credit: 96,
},
}
]
预期的数组是将一个对象推送给这里的每个孩子,该对象将是我们在底部拥有的全部对象。
预期结果:
let resultArray = {
account: "account 1",
children: [
{
account: "1",
},
{
account: "2",
},
{
debit: 96,
credit:96,
},
],
total: {
debit: 96,
credit:96,
},
},
{
account: "account 2",
children: [
{
account: "1",
},
{
debit: 45,
credit: 96,
},
],
total: {
debit: 45,
credit: 96,
},
},
有什么相同的建议吗?
解决方案
var resultArray = array.map((data) => {
const newChildrenArray = [...data.children];
newChildrenArray.push({...data.total});
return { ...data, children: newChildrenArray };
});
注意:您的数组和 resultArray 无效。它们应该是这样的: let array = [obj1, obj2]
希望这能解决您的问题!
推荐阅读
- php - 如何在php中将灰度图像转换为纯黑白?
- javascript - Awaitmessage 和 ToLowerCase() 不能一起工作
- html - 什么是“ ”?
- ruby-on-rails - 使用 form_tag 和 select_tag 选择并查看带有 Id 的操作?
- ruby - 按值分组哈希数组并在Ruby中保留结构(哈希)
- mysql - Laravel更新方法中的ErrorException(E_NOTICE)数组到字符串转换
- rcpp - 在 Rcpp Eigen 中找到满足某些条件的矩阵中的索引
- autohotkey - AutoHotkey v1 使用一个快捷方式作为开关控制给定循环动作的开或关
- tensorflow - 正则化效果的 TensorFlow 可视化
- swagger - 使用 swagger 4.x 包生成 swagger 2.0 yaml