मान लीजिए, यहां एक सरणी है जिसमें किसी कंपनी द्वारा समय के साथ बेचे और खरीदे गए शेयरों के बारे में कुछ डेटा शामिल है।
const लेनदेन =[ ['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]];
हम एक ऐसा फ़ंक्शन लिखना चाहते हैं जो इस डेटा को लेता है और कुंजी asstock नाम (जैसे 'AAPL', 'MCD') के साथ सरणियों का एक ऑब्जेक्ट देता है और दो नंबरों की सरणी के रूप में मान देता है, जहां पहला तत्व कुल खरीद का प्रतिनिधित्व करता है और दूसरा तत्व प्रतिनिधित्व करता है कुल बिक्री। इसलिए, ऐसा करने वाला कोड होगा -
उदाहरण
const लेनदेन =[ ['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) => {रिटर्न arr.reduce((acc, val, ind) => { const [स्टॉक, टाइप, अमाउंट] =वैल; अगर (एसीसी [स्टॉक]) {कास्ट [खरीदें, बेचें] =एसीसी [स्टॉक]; अगर (टाइप ==='खरीदें') {एसीसी [स्टॉक] =[खरीदें + राशि, बेचें];} और {एसीसी [स्टॉक] =[खरीदें, बेचें + राशि]; }} और {अगर (प्रकार ==='खरीदें') { एसीसी [स्टॉक] =[राशि, 0]; }else{ एसीसी [स्टॉक] =[0, राशि]; } } वापसी एसीसी; }, {});};console.log(digestTransactions(transactions));पूर्व>आउटपुट
कंसोल में आउटपुट होगा -
{ AAPL:[ 200, 120 ], WMT:[ 50, 75 ], MCD:[ 135, 90 ], GOOG:[ 0, 10 ], DIS:[ 15, 0 ]}