यहाँ चर हैं:

let linked = {
  related: [
    [0, 'a', 'b'],
    [0, 'c', 'd', 'e', 'f', 'g'],
    [0, "s"],
    [0, 'd'],
    [0, 'g', 'n', 'h']
  ]
}

let hold = [{
    0: 4, // 0 represents [0,'a','b']
    1: 3 // 1 represents [0,'c','d','e','f','g']
  },
  {
    3: 2, // 3 represents [0,'d']
    4: 6 //  4 represents [0,'g','n', 'h'] 
  } 
];

hold array में दो ऑब्जेक्ट हैं और प्रत्येक ऑब्जेक्ट की प्रॉपर्टी link.related के इंडेक्स को दर्शाती है।

समस्या यह है कि मैं प्रत्येक hold object संपत्ति के मूल्यों को linked.related के पहले तत्व में जोड़ना चाहता हूं।

तो परिणाम होना चाहिए:

let linked = {
  related: [
    [4, 'a', 'b'],
    [3, 'c', 'd', 'e', 'f', 'g'],
    [0, "s"],
    [2, 'd'],
    [6, 'g', 'n', 'h']
  ]
}

इसलिए मैं linked.related के पहले तत्व के साथ hold के मानों को योग करना चाहता हूं

0
Sara Ree 19 अक्टूबर 2019, 22:02

3 जवाब

सबसे बढ़िया उत्तर

आप इसे प्रत्येक लूप के लिए 2 में कर सकते हैं

hold.forEach(x => {
  Object.keys(x).forEach (y => {
    linked.related[y][0] += x[y]
  });
});
let linked = {
  related: [

    [0, 'a', 'b'],
    [0, 'c', 'd', 'e', 'f', 'g'],
    [0, "s"],
    [0, 'd'],
    [0, 'g', 'n', 'h']

  ]
}


let hold = [{
    0: 4,
    1: 3
  },
  {
    3: 2,
    4: 6
  } 
];
hold.forEach(x => {
  Object.keys(x).forEach (y => {
    linked.related[y][0] += x[y]
  });
});
console.log(linked.related);
2
Sagar V 19 अक्टूबर 2019, 22:15

आप होल्ड को फिर से चालू कर सकते हैं और अपडेट के लिए प्रविष्टियां प्राप्त कर सकते हैं।

var linked = { related: [[0, 'a', 'b'], [0, 'c', 'd', 'e', 'f', 'g'], [0, "s"], [0, 'd'], [0, 'g', 'n', 'h']] },
    hold = [{ 0: 4, 1: 3 }, { 3: 2, 4: 6 }];

hold.forEach(o => Object.entries(o).forEach(([i, v]) => linked.related[i][0] += v));

console.log(linked);
.as-console-wrapper { max-height: 100% !important; top: 0; }
2
Nina Scholz 19 अक्टूबर 2019, 22:16

आप forEach और Object.entries का उपयोग कर सकते हैं

let linked = {related: [[0, 'a', 'b'],[0, 'c', 'd', 'e', 'f', 'g'],[0, "s"],[0, 'd'],[0, 'g', 'n', 'h']]}
let hold =[{0: 4, 1:3},{3: 2, 4:6}]

hold.forEach(v => {
  Object.entries(v).forEach(([k, v]) => {
    linked.related[k][0] += v
  })
})

console.log(linked)
2
Code Maniac 19 अक्टूबर 2019, 22:19