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

JavaScript में समान कुंजी वाले एरे मानों का योग


मान लीजिए, यहां एक एरे है जिसमें किसी कंपनी द्वारा समय के साथ खरीदे और बेचे गए स्टॉक के बारे में कुछ डेटा है।

const transactions = [    ['AAPL', 'buy', 100],    ['WMT', 'sell', 75],    ['MCD', 'buy', 125],    ['GOOG', 'sell', 10],    ['AAPL', 'buy', 100],    ['AAPL', 'sell', 100],    ['AAPL', 'sell', 20],    ['DIS', 'buy', 15],    ['MCD', 'buy', 10],    ['WMT', 'buy', 50],    ['MCD', 'sell', 90] ];

हम एक फ़ंक्शन लिखना चाहते हैं जो इस डेटा को लेता है और ऑब्जेक्ट ऑफ एरे लौटाता है जहां कुंजी स्टॉक का नाम है (जैसे 'AAPL', 'MCD') और मान दो नंबरों का एरे है, जहां पहला तत्व कुल खरीद दर्शाता है और दूसरा तत्व कुल बिक्री दर्शाता है। इसके लिए कोड होगा -

उदाहरण

const transactions = [    ['AAPL', 'buy', 100],    ['WMT', 'sell', 75],    ['MCD', 'buy', 125],    ['GOOG', 'sell', 10],    ['AAPL', 'buy', 100],    ['AAPL', 'sell', 100],    ['AAPL', 'sell', 20],    ['DIS', 'buy', 15],    ['MCD', 'buy', 10],    ['WMT', 'buy', 50],    ['MCD', 'sell', 90] ]; const digestTransactions = (arr) => {    return arr.reduce((acc, val, ind) => {       const [stock, type, amount] = val;       if(acc[stock]){          const [buy, sell] = acc[stock];          if(type === 'buy'){             acc[stock] = [buy+amount, sell];          }else{             acc[stock] = [buy, sell+amount];          }          }else{             if(type === 'buy'){                acc[stock] = [amount, 0];             }else{                acc[stock] = [0, amount];          }       }       return acc;    }, {}); }; console.log(digestTransactions(transactions));

आउटपुट

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

{    AAPL: [ 200, 120 ],    WMT: [ 50, 75 ],    MCD: [ 135, 90 ],    GOOG: [ 0, 10 ],    DIS: [ 15, 0 ] }

  1. - जावास्क्रिप्ट में सरणी से फाल्सी वैल्यूज कैसे हटाएं?

    जावास्क्रिप्ट लाइब्रेरी underscore.js ने सरणी में सभी false मानों को हटाने के लिए _.compact() मेथड प्रदान किया है। सरणी में फाल्सी मान NaN, undefined, खाली स्ट्रिंग, false और 0 हैं। यह फाल्सी मानों से मुक्त एक नई सरणी आउटपुट के रूप में लौटाता है। सिंटैक्स _.compact( array ); यह एक सरणी को पैरामीटर

  1. JavaScript array.values() मेथड JavaScript array.values() मेथड

    JavaScript array.values() एक इटरेटर ऑब्जेक्ट लौटाता है जिसमें दिए गए ऐरे के सभी मान होते हैं। उदाहरण { fillEle.innerHTML = ; for (let x of arr.values()) { fillEle.innerHTML += x + </br>; } }); </script> </body> </html> आउटपुट यहां क

  1. जावास्क्रिप्ट का उपयोग करके ऐरे में नेस्टेड ऑब्जेक्ट वैल्यूज का योग जावास्क्रिप्ट का उपयोग करके ऐरे में नेस्टेड ऑब्जेक्ट वैल्यूज का योग

    जावास्क्रिप्ट का उपयोग करके ऐरे में नेस्टेड ऑब्जेक्ट वैल्यूज का योग करने का कोड निम्नलिखित है - उदाहरण <!DOCTYPE html> <html lang=en> <head> <meta charset=UTF-8 /> <meta name=viewport content=width=device-width, initial-scale=1.0 /> <title>Document</title>