मान लीजिए कि हमारे पास दो सरणियाँ हैं, उदाहरण के लिए निम्नलिखित दो पर विचार करें -
const array1 = ['a','b','c','d','e','f','g','h']; const array2 = [ 1, 0, 0, 1 , 0, 0, 1, 0];
दोनों सरणियों की लंबाई समान होने के लिए बाध्य है। हमें एक फ़ंक्शन लिखने की आवश्यकता होती है, जब दूसरी सरणी से एक तत्व प्रदान किया जाता है, तो उन सभी तत्वों के पहले सरणी से एक उप-सरणी लौटाता है, जिसका सूचकांक उस तत्व के सूचकांक से मेल खाता है जिसे हमने दूसरे सरणी में एक तर्क के रूप में लिया था।
उदाहरण के लिए:findSubArray(0) वापस आना चाहिए -
[‘b’, ‘c’, ‘e’, ‘f’, ‘h’]
क्योंकि ये इंडेक्स 1, 2, 4, 5, 7 पर पहली सरणी में मौजूद तत्व हैं, जिस पर दूसरी सरणी में 0 मौजूद है।
इसलिए, अब इस फंक्शन के लिए कोड लिखते हैं -
उदाहरण
const array1 = ['a','b','c','d','e','f','g','h']; const array2 = [ 1, 0, 0, 1 , 0, 0, 1, 0]; const findSubArray = (first, second, el) => { if(first.length !== second.length){ return false; }; return second.reduce((acc, val, ind) => { if(val === el){ acc.push(first[ind]); }; return acc; }, []); }; console.log(findSubArray(array1, array2, 0)); console.log(findSubArray(array1, array2, 1));
आउटपुट
कंसोल में आउटपुट होगा -
[ 'b', 'c', 'e', 'f', 'h' ] [ 'a', 'd', 'g' ]