Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> JavaScript

JavaScript में रिकॉर्ड एकत्रित करना


मान लीजिए हमारे पास ऑब्जेक्ट की एक सरणी है जिसमें कुछ लोगों द्वारा किए गए यादृच्छिक लेनदेन के बारे में जानकारी है:

const transactions = [
  { name: 'Rakesh', amount: 1500 },
  { name: 'Rajesh', amount: 1200 },
  { name: 'Ramesh', amount: 1750 },
  { name: 'Rakesh', amount: 2100 },
  { name: 'Mukesh', amount: 1100 },
  { name: 'Rajesh', amount: 1950 },
  { name: 'Mukesh', amount: 1235 },
  { name: 'Ramesh', amount: 2000 }
];

हमें एक फ़ंक्शन लिखना है जो इस सरणी को लेता है और अद्वितीय लोगों के लेनदेन राशि को अलग-अलग ऑब्जेक्ट में एकत्रित करके लौटाता है।

आइए इस फ़ंक्शन के लिए कोड लिखते हैं:

उदाहरण

const transactions = [
  { name: 'Rakesh', amount: 1500 },
  { name: 'Rajesh', amount: 1200 },
  { name: 'Ramesh', amount: 1750 },
  { name: 'Rakesh', amount: 2100 },
  { name: 'Mukesh', amount: 1100 },
  { name: 'Rajesh', amount: 1950 },
  { name: 'Mukesh', amount: 1235 },
  { name: 'Ramesh', amount: 2000 }
];

const aggregateArray = arr => {
  return arr.reduce((acc, val) => {
    const index = acc.findIndex(obj => obj.name === val.name);
    if (index !== -1) {
      acc[index].amount += val.amount;
    } else {
      acc.push({
        name: val.name,
        amount: val.amount
      });
    }
    return acc;
  }, []);
};

console.log(aggregateArray(transactions));

आउटपुट

कंसोल में आउटपुट होगा:

[
  { name: 'Rakesh', amount: 3600 },
  { name: 'Rajesh', amount: 3150 },
  { name: 'Ramesh', amount: 3750 },
  { name: 'Mukesh', amount: 2335 }
]

  1. जावास्क्रिप्ट में ES6 प्रॉपर्टी शॉर्टहैंड्स जावास्क्रिप्ट में ES6 प्रॉपर्टी शॉर्टहैंड्स

    ES6 में, यदि ऑब्जेक्ट की नाम और प्रॉपर्टीज के रूप में पास किए गए वेरिएबल्स का नाम समान है तो हम केवल की नाम निर्दिष्ट करके वैल्यू नाम को छोड़ सकते हैं। जावास्क्रिप्ट में प्रॉपर्टी शॉर्टहैंड्स के लिए निम्नलिखित कोड है: उदाहरण <!DOCTYPE html> <html lang="en"> <head> <me

  1. JavaScript में प्योर JS द्वारा अलग-अलग li में क्लास नाम जोड़ना JavaScript में प्योर JS द्वारा अलग-अलग li में क्लास नाम जोड़ना

    क्लास जोड़ने के लिए, forEach() के साथ classList.add() का उपयोग करें।उदाहरणकोड निम्न है:<!DOCTYPE html> <html lang=en> <head>    <meta charset=UTF-8>    <meta name=viewport content=width=device-width, initial-scale=1.0>    <title>Docum

  1. JavaScript में फ्लैट ऑब्जेक्ट सरणी को ट्री में बदलना JavaScript में फ्लैट ऑब्जेक्ट सरणी को ट्री में बदलना

    मान लीजिए, हमारे पास ऑब्जेक्ट की एक सरणी है जैसे - const arr = [ { id: 1, name: name 1, parentId: null }, { id: 2, name: name 2, parentId: null }, { id: 2_1, name: name 2_1, parentId: 2 }, { id: 2_2, name: name 2_2, parentId: 2 }, { id: 3, name: name 3, parentId: null }, { i