मान लीजिए कि हमारे पास इस तरह के कुछ नकदी प्रवाह का वर्णन करने वाली दो सरणियाँ हैं -
const months = ["jan", "feb", "mar", "apr"]; const cashflows = [ {'month':'jan', 'value':10}, {'month':'mar', 'value':20} ];
हमें एक जावास्क्रिप्ट फ़ंक्शन लिखना है जो दो ऐसे सरणियों को लेता है। फिर हमारे फ़ंक्शन को वस्तुओं की एक संयुक्त सरणी का निर्माण करना चाहिए जिसमें प्रत्येक महीने के लिए एक वस्तु और उस महीने के लिए नकदी प्रवाह का मूल्य हो।
इसलिए, उपरोक्त सरणी के लिए, आउटपुट इस तरह दिखना चाहिए -
const output = [ {'month':'jan', 'value':10}, {'month':'feb', 'value':''}, {'month':'mar', 'value':20}, {'month':'apr', 'value':''} ];
उदाहरण
इसके लिए कोड होगा -
const months = ["jan", "feb", "mar", "apr"]; const cashflows = [ {'month':'jan', 'value':10}, {'month':'mar', 'value':20} ]; const combineArrays = (months = [], cashflows = []) => { let res = []; res = months.map(function(month) { return this[month] || { month: month, value: '' }; }, cashflows.reduce((acc, val) => { acc[val.month] = val; return acc; }, Object.create(null))); return res; }; console.log(combineArrays(months, cashflows));
आउटपुट
और कंसोल में आउटपुट होगा -
[ { month: 'jan', value: 10 }, { month: 'feb', value: '' }, { month: 'mar', value: 20 }, { month: 'apr', value: '' } ]