Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> JavaScript

सरणी को विभाजित करना - JavaScript


मान लीजिए, हमें एक फ़ंक्शन लिखना है जो पहली आर्गुमेंट के रूप में स्ट्रिंग/नंबर लिटरल्स की एक सरणी arr और दूसरी आर्गुमेंट के रूप में एक संख्या n लेता है।

हमें n उप-सरणियों की एक सरणी लौटानी है, जिनमें से प्रत्येक में अधिकतम arr.length / n तत्व हों। और तत्वों का वितरण इस तरह होना चाहिए:

  • पहला तत्व पहली उप-सरणी में जाता है, दूसरा दूसरी में, तीसरा तीसरी में, और इसी तरह।
  • एक बार जब प्रत्येक उप-सरणी में एक तत्व हो जाता है, तो हम फिर से पहली उप-सरणी को उसके दूसरे तत्व से भरना शुरू करते हैं।
  • इसी तरह, जब सभी उप-सरणियों में दो तत्व हो जाते हैं, उसके बाद ही हम पहली सरणी में तीसरा तत्व भरते हैं, और इसी तरह।

उदाहरण

यदि इनपुट सरणी है:

const input = [656, 756, 5345, 67, 43, 76, 54, 768, 34];

और संख्या n 3 है, तो आउटपुट होना चाहिए:

const output = [ [ 656, 67, 54 ], [ 756, 43, 768 ], [ 5345, 76, 34 ] ];

हम मूल सरणी पर Array.prototype.reduce() मेथड का उपयोग करके वांछित सरणी का निर्माण करेंगे।

कोड

const input = [656, 756, 5345, 67, 43, 76, 54, 768, 34]; 
const divideArray = (arr, size) => { 
  return arr.reduce((acc, val, ind) => { 
    const subIndex = ind % size; 
    if (!Array.isArray(acc[subIndex])) { acc[subIndex] = [val]; } 
    else { acc[subIndex].push(val); } 
    return acc; 
  }, []); 
}; 
console.log(divideArray(input, 3));

आउटपुट

[ [ 656, 67, 54 ], [ 756, 43, 768 ], [ 5345, 76, 34 ] ]
  1. JavaScript Array.shift(): पहला तत्व हटाएं JavaScript Array.shift(): पहला तत्व हटाएं

    Array.prototype.shift() मेथड एरे से पहला तत्व हटाता है, उस तत्व को लौटाता है, और शेष सभी तत्वों के इंडेक्स को 1 से घटा देता है। यह एरे की लंबाई बदल देता है। उदाहरण { const removed = arr.shift(); fillEle.innerHTML = `हटाया गया: ${removed}<br>शेष: ` + arr.join(, ); });

  1. JavaScript Array.reverse(): एरे को उल्टा करें JavaScript Array.reverse(): एरे को उल्टा करें

    Array.prototype.reverse() मेथड एरे के तत्वों के क्रम को स्थानांतरित (in-place) उलट देता है। पहला तत्व अंतिम बन जाता है और अंतिम पहला। यह मूल एरे को बदल देता है और उसी एरे का संदर्भ लौटाता है। उदाहरण { arr.reverse(); fillEle.innerHTML = उल्टा: + arr.join(, ); }); </scrip

  1. जावास्क्रिप्ट में ऐरे डीस्ट्रक्चरिंग जावास्क्रिप्ट में ऐरे डीस्ट्रक्चरिंग

    परिचय डीस्ट्रक्चरिंग असाइनमेंट (ES2015) ऐरे से मानों को अलग-अलग वेरिएबल्स में अनपैक करने का एक संक्षिप्त सिंटैक्स है। यह पठनीयता में सुधार करता है और मैन्युअल इंडेक्स एक्सेस की आवश्यकता को कम करता है। उदाहरण निम्न कोड जावास्क्रिप्ट में ऐरे डीस्ट्रक्चरिंग के लिए है: <!DOCTYPE html> <html