हमें एक फ़ंक्शन लिखना है जो एक एरे लेता है और दो प्रॉपर्टी वाले ऑब्जेक्ट को लौटाता है अर्थात् पॉजिटिव और नेगेटिव। उन दोनों को संबंधित एरे होना चाहिए जिसमें मूल एरे से सभी पॉजिटिव और नेगेटिव आइटम हों।
यह काफी सीधा है, हम Array.prototype.reduce() मेथड का उपयोग करके वांछित तत्वों को चुनेंगे और उन्हें दो एरे के ऑब्जेक्ट में डालेंगे।
उदाहरण
const arr = [ [12, -45, 65, 76, -76, 87, -98], [54, -65, -98, -23, 78, -9, 1, 3], [87, -98, 3, -2, 123, -877, 22, -5, 23, -67] ]; const splitArray = (arr) => { return arr.reduce((acc, val) => { if(val < 0){ acc['negative'].push(val); } else { acc['positive'].push(val); } return acc; }, { positive: [], negative: [] }) }; for(let i = 0; i < arr.length; i++){ console.log(splitArray(arr[i])); }आउटपुट
कंसोल में आउटपुट होगा -
{ positive: [ 12, 65, 76, 87 ], negative: [ -45, -76, -98 ] } { positive: [ 54, 78, 1, 3 ], negative: [ -65, -98, -23, -9 ] } { positive: [ 87, 3, 123, 22, 23 ], negative: [ -98, -2, -877, -5, -67 ] }