Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/444.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在javascript中向数组添加新的键和值?_Javascript_Arrays_Filter - Fatal编程技术网

如何在javascript中向数组添加新的键和值?

如何在javascript中向数组添加新的键和值?,javascript,arrays,filter,Javascript,Arrays,Filter,我有两个数组,假设数组的值如下: 第二个数组是: var array2 = ["809cd136-02c7-4cc8-b9de-04fd3359b265", "609d3a78-8f7c-4843-acdb-2dcfc73c0d96"] 现在,我只想在数组1中的值等于数组1的对象中添加一个新键值。换句话说,我想匹配这两个数组,并想在值相等的对象中添加“status=true” 要添加的新密钥是: {status: true} 现在,我的新阵列应该是: [ {Id: "809cd136-02c

我有两个数组,假设数组的值如下:

第二个数组是:

var array2 = ["809cd136-02c7-4cc8-b9de-04fd3359b265", "609d3a78-8f7c-4843-acdb-2dcfc73c0d96"]
现在,我只想在数组1中的值等于数组1的对象中添加一个新键值。换句话说,我想匹配这两个数组,并想在值相等的对象中添加“status=true”

要添加的新密钥是:

{status: true}
现在,我的新阵列应该是:

[
{Id: "809cd136-02c7-4cc8-b9de-04fd3359b265", Name: "testing", status: true},
{Id: "609d3a78-8f7c-4843-acdb-2dcfc73c0d96", Name: "Delhi", status: true},
{Id: "264d54cb-b104-48ed-91db-673327ae8d0e", Name: "rohit-auditor"},
{Id: "ce9691b3-dc55-4d30-baf4-7987c2b49b3e", Name: "test"},
{Id: "284e9e98-8ed7-4fb7-b09f-5d1f2a668b15", Name: "aman"}
]

希望你能理解

提前感谢,

您可以这样使用:

let array1=[{Id:“809cd136-02c7-4cc8-b9de-04fd3359b265”,名称:“测试”},{Id:“609d3a78-8f7c-4843-acdb-2DFC73C0D96”,名称:“德里”},{Id:“264d54cb-b104-48ed-91db-673327ae8d0e”,名称:“rohit审核员”},{Id:“ce9691b3-dc55-4d30-baf4-7987c2b49b3e”,名称:“测试”},{Id:“28D54CB-b104-48ed-91db-673327ae8d0e”},名称:“FBB9E”,
阵列2=[“809cd136-02c7-4cc8-b9de-04fd3359b265”,“609d3a78-8f7c-4843-acdb-2DFC73C0D96”]
array2.forEach(id=>{
let found=array1.find(a=>a.Id==Id);
如果(找到)
found.status=true
})
console.log(array1)
您可以这样使用:

let array1=[{Id:“809cd136-02c7-4cc8-b9de-04fd3359b265”,名称:“测试”},{Id:“609d3a78-8f7c-4843-acdb-2DFC73C0D96”,名称:“德里”},{Id:“264d54cb-b104-48ed-91db-673327ae8d0e”,名称:“rohit审核员”},{Id:“ce9691b3-dc55-4d30-baf4-7987c2b49b3e”,名称:“测试”},{Id:“28D54CB-b104-48ed-91db-673327ae8d0e”},名称:“FBB9E”,
阵列2=[“809cd136-02c7-4cc8-b9de-04fd3359b265”,“609d3a78-8f7c-4843-acdb-2DFC73C0D96”]
array2.forEach(id=>{
let found=array1.find(a=>a.Id==Id);
如果(找到)
found.status=true
})
console.log(array1)
您可以使用方法迭代并创建一个新数组,然后使用方法检查array2中存在的值。其中使用方法组合两个对象

var newArray = array1.map(o => array2.includes(o.Id) ? {...o,  ...add} : { ...add })
var数组1=[{
Id:“809cd136-02c7-4cc8-b9de-04fd3359b265”,
名称:“测试”
},
{
Id:“609d3a78-8f7c-4843-acdb-2DFCC`阵列#forEach`73c0d96”,
姓名:“德里”
},
{
Id:“264d54cb-b104-48ed-91db-673327ae8d0e”,
姓名:“rohit审计员”
},
{
Id:“ce9691b3-dc55-4d30-baf4-7987c2b49b3e”,
名称:“测试”
},
{
Id:“284e9e98-8ed7-4fb7-b09f-5d1f2a668b15”,
姓名:“阿曼”
}
]
var array2=[“809cd136-02c7-4cc8-b9de-04fd3359b265”,“609d3a78-8f7c-4843-acdb-2DFC73C0D96”]
变量添加={
状态:正确
};
var newArray=array1.map(o=>array2.includes(o.Id)?{…o,…add}:{…add})
console.log(newArray);
您可以使用方法迭代并创建一个新数组,然后使用方法检查数组中存在的值2。其中使用组合两个对象

var newArray = array1.map(o => array2.includes(o.Id) ? {...o,  ...add} : { ...add })
var数组1=[{
Id:“809cd136-02c7-4cc8-b9de-04fd3359b265”,
名称:“测试”
},
{
Id:“609d3a78-8f7c-4843-acdb-2DFCC`阵列#forEach`73c0d96”,
姓名:“德里”
},
{
Id:“264d54cb-b104-48ed-91db-673327ae8d0e”,
姓名:“rohit审计员”
},
{
Id:“ce9691b3-dc55-4d30-baf4-7987c2b49b3e”,
名称:“测试”
},
{
Id:“284e9e98-8ed7-4fb7-b09f-5d1f2a668b15”,
姓名:“阿曼”
}
]
var array2=[“809cd136-02c7-4cc8-b9de-04fd3359b265”,“609d3a78-8f7c-4843-acdb-2DFC73C0D96”]
变量添加={
状态:正确
};
var newArray=array1.map(o=>array2.includes(o.Id)?{…o,…add}:{…add})

log(newArray);
一个简单的
map
&
indexOf
就足够了

var array1 = [
    {Id: "809cd136-02c7-4cc8-b9de-04fd3359b265", Name: "testing"},
    {Id: "609d3a78-8f7c-4843-acdb-2dcfc73c0d96", Name: "Delhi"},
    {Id: "264d54cb-b104-48ed-91db-673327ae8d0e", Name: "rohit-auditor"},
    {Id: "ce9691b3-dc55-4d30-baf4-7987c2b49b3e", Name: "test"},
    {Id: "284e9e98-8ed7-4fb7-b09f-5d1f2a668b15", Name: "aman"}
    ] 

    var array2 = ["809cd136-02c7-4cc8-b9de-04fd3359b265", "609d3a78-8f7c-4843-acdb-2dcfc73c0d96"]


    var result=array1.map(el=>{

        if(array2.indexOf(el.Id)>-1){
        el.status=true
      }
      return el
    })

一个简单的
map
&
indexOf
就足够了

var array1 = [
    {Id: "809cd136-02c7-4cc8-b9de-04fd3359b265", Name: "testing"},
    {Id: "609d3a78-8f7c-4843-acdb-2dcfc73c0d96", Name: "Delhi"},
    {Id: "264d54cb-b104-48ed-91db-673327ae8d0e", Name: "rohit-auditor"},
    {Id: "ce9691b3-dc55-4d30-baf4-7987c2b49b3e", Name: "test"},
    {Id: "284e9e98-8ed7-4fb7-b09f-5d1f2a668b15", Name: "aman"}
    ] 

    var array2 = ["809cd136-02c7-4cc8-b9de-04fd3359b265", "609d3a78-8f7c-4843-acdb-2dcfc73c0d96"]


    var result=array1.map(el=>{

        if(array2.indexOf(el.Id)>-1){
        el.status=true
      }
      return el
    })

您必须将
第二个数组的元素
与第一个数组的元素的
id进行比较,并向找到的匹配项添加键
(状态)

var array1=[{Id:“809cd136-02c7-4cc8-b9de-04fd3359b265”,名称:“测试”},{Id:“609d3a78-8f7c-4843-acdb-2DFC73C0D96”,名称:“德里”},{Id:“264d54cb-b104-48ed-91db-673327ae8d0e”,名称:“rohit审核员”},{Id:“ce9691b3-dc55-4d30-baf4-7987c2b49b3e”,名称:“测试”},{Id:“28D54CB-b104-48ed-91db-673327ae8d0e”},名称:“FBE9B3”;
var array2=[“809cd136-02c7-4cc8-b9de-04fd3359b265”,“609d3a78-8f7c-4843-acdb-2DFC73C0D96”];
数组2.forEach(函数(secondElem){
让matchingElemInFirstArr=array1.find(el=>el.Id==secondElem);
matchingElemInFirstArr['status']=true;
});

console.log(array1);
您必须将
第二个数组的元素
与第一个数组的元素
的id进行比较,并向找到的匹配项添加键
(状态)

var array1=[{Id:“809cd136-02c7-4cc8-b9de-04fd3359b265”,名称:“测试”},{Id:“609d3a78-8f7c-4843-acdb-2DFC73C0D96”,名称:“德里”},{Id:“264d54cb-b104-48ed-91db-673327ae8d0e”,名称:“rohit审核员”},{Id:“ce9691b3-dc55-4d30-baf4-7987c2b49b3e”,名称:“测试”},{Id:“28D54CB-b104-48ed-91db-673327ae8d0e”},名称:“FBE9B3”;
var array2=[“809cd136-02c7-4cc8-b9de-04fd3359b265”,“609d3a78-8f7c-4843-acdb-2DFC73C0D96”];
数组2.forEach(函数(secondElem){
让matchingElemInFirstArr=array1.find(el=>el.Id==secondElem);
matchingElemInFirstArr['status']=true;
});
console.log(array1);