简体   繁体   English

如何将对象数组合并或 append 到 JavaScript 中的另一个 object 数组

[英]How to merge or append the array of objects to another array of object in JavaScript

How to merge the array of objects to another array of objects in JavaScript如何将对象数组合并到 JavaScript 中的另一个对象数组

Hi everyone, below I added my code.大家好,下面我添加了我的代码。


    const options = ["Fruit", "Vegitables", "Drinks"];
    const mainArray=[{
    Type:'Fruit',
    Name:'apple',
    Amount:'20'
    },
    {
    Type:'Fruit',
    Name:'apple',
    Amount:'20'
    },
    {
    Type:'Vegitables',
    Name:'tomoto',
    Amount:'50'
    },
    {
    Type:'Vegitables',
    Name:'onion',
    Amount:'20'
    },
    {
    Type:'Drinks',
    Name:'Milk',
    Amount:'30'
    },
    {
    Type:'Drinks',
    Name:'Juice',
    Amount:'20'
    }
    ]
    ///Filtering By Type
    
    const filterByType=()=>{
    let allMergedData=[];
     selectedtypes?.map((type)=>{
        let mergedData=[];
        let filteredData= mainArray?.filter(x=>x.Type===type.toLowerCase());
        mergedData=[...filteredData];
        allMergedData=[...mergedData, ...filteredData];
     })
     return allMergedData;
    };
    
    return(
    <div>
    {options.map((option) => (
                <MenuItem key={option} value={name}>
                  <Checkbox value={option}
              onChange={handleChange}
              checked={selected.includes(option)} />
                  <ListItemText primary={option} />
                </MenuItem>
              ))}
    </div>
    )

Expected Output is: While I select the checkbox fruit and vegetable, that time I pass the fruit and vegetable values in the filterByType method.预期的 Output 是: 而我 select 复选框水果和蔬菜,那个时候我通过 filterByType 方法中的水果和蔬菜值。 After filtering the data I need the output like a single array of objects.过滤数据后,我需要 output 就像单个对象数组一样。


    [{
        Type:'Fruit',
        Name:'apple',
        Amount:'20'
        },
        {
        Type:'Fruit',
        Name:'apple',
        Amount:'20'
        },
        {
        Type:'Vegitables',
        Name:'tomoto',
        Amount:'50'
        },
        {
        Type:'Vegitables',
        Name:'onion',
        Amount:'20'
        },]

you can use spread operator for this您可以为此使用扩展运算符

const merged = [...person,...clothing]
var person=[{"name":"Billy","age":34},{"name":"Billy","age":34}];
var clothing=[{"shoes":"nike","shirt":"long sleeve"},{"shoes":"nike","shirt":"long sleeve"}];


var mergedV1 = [...person, ...clothing]
var mergedV2 = person.concat(clothing)

Use spread ES6 syntax https://developer.mozilla.org/ru/docs/Web/JavaScript/Reference/Operators/Spread_syntax使用传播 ES6 语法https://developer.mozilla.org/ru/docs/Web/JavaScript/Reference/Operators/Spread_syntax

 var person=[{"name":"Billy","age":34},{"name":"Billy","age":34}]; var clothing=[{"shoes":"nike","shirt":"long sleeve"},{"shoes":"nike","shirt":"long sleeve"}]; var merge = [...person, ...clothing] console.log(merge)

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 如何合并对象数组和另一个对象数组 - How to merge array of object and another array of objects 在JavaScript中,如何合并一个对象数组和另一个对象数组? - In JavaScript, how do I merge an array of objects with another array of objects? 如何在 javascript 中的一个数组中合并另一个数组对象中的数组 - how to merge array inside another array objects in one array in javascript 如何将此JavaScript数组对象附加到另一个JavaScript数组对象? - How to append this JavaScript array object to another JavaScript array object? 如果使用 JavaScript 的 object 值相同,如何将对象和 append 合并到新数组中? - How to merge objects and append it into new array if object values are same using JavaScript? 将JavaScript数组中的对象合并为对象 - Merge Objects in a JavaScript Array to object JavaScript - 如何合并/附加到对象/数组 - ReactJS - 传播语法 - JavaScript - How to merge/append to an Object/Array - ReactJS - Spread Syntax 如何在一个对象(包括内部对象)中合并对象数组-JavaScript? - How to merge array of objects in one object, including inner objects - JavaScript? 合并对象数组和对象对象-JavaScript - Merge an array of objects and an object of objects - JavaScript javascript - 将对象数组中的 2 个对象合并为一个 Object - javascript - Merge 2 objects in Array of Objects into one Object
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM