मान लीजिए, हमारे पास इस तरह की संख्याओं की एक सरणी है -
const arr = [1,2,3,4,1,7,8,9,1];
मान लीजिए कि हम सरणी में सबसे छोटे तत्व का सूचकांक खोजना चाहते हैं। इसके लिए हम सरलता से उपयोग कर सकते हैं -
const min = Math.min.apply(Math, arr); const ind = arr.indexOf(min);
यह कोड सफलतापूर्वक ind को 0 पर सेट कर देगा, जो वास्तव में सही है।
लेकिन हम जो हासिल करना चाहते हैं वह यह है कि यदि सरणी में एक से अधिक न्यूनतम तत्व हैं, जैसे कि उपरोक्त सरणी (3 वाले) में, तो हमें एक सरणी वापस करनी चाहिए जिसमें न्यूनतम तत्वों के सभी सूचकांक हों।
तो, इस सरणी के लिए, हमारा वांछित आउटपुट है -
const ind = [0, 4, 8]
हमें एक जावास्क्रिप्ट फ़ंक्शन लिखना है जो संख्याओं की एक सरणी लेता है और सरणी में न्यूनतम तत्वों के सभी सूचकांकों की एक सरणी देता है।
इसलिए, आइए इस फ़ंक्शन के लिए कोड लिखें -
उदाहरण
इसके लिए कोड होगा -
const arr = [1,2,3,4,1,7,8,9,1]; const minArray = arr => { const min = arr.reduce((acc, val) => Math.min(acc, val), Infinity); const res = []; for(let i = 0; i < arr.length; i++){ if(arr[i] !== min){ continue; }; res.push(i); }; return res; }; console.log(minArray(arr));
आउटपुट
कंसोल में आउटपुट होगा -
[ 0, 4, 8 ]