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

JavaScript में सरणी के माध्यम से पुनरावृति करना, true की घटनाओं को जोड़ना


मान लीजिए हमारे पास एक सरणी है जो 't'/'f' द्वारा दर्शाए गए true/false की है जिसे हमने किसी डेटाबेस से पुनर्प्राप्त किया है जैसे -

const arr = ['f', 't', 'f', 't', 't', 't', 'f', 'f', 't', 't', 't', 't', 't', 't', 'f', 't'];

हमें एक JavaScript फ़ंक्शन लिखना है जो ऐसी एक सरणी लेता है। हमारा फ़ंक्शन उन 't' की लगातार उपस्थिति को गिनना चाहिए जो दो 'f' के बीच सैंडविच हैं और उस गिनती की एक सरणी लौटानी चाहिए।

इसलिए, उपरोक्त सरणी के लिए, आउटपुट इस तरह दिखना चाहिए -

const output = [1, 3, 6, 1];

उदाहरण

इसके लिए कोड होगा -

const arr = ['f', 't', 'f', 't', 't', 't', 'f', 'f', 't', 't', 't', 't', 't', 't', 'f', 't'];
const countClusters = (arr = []) => {
    let res = [];
    res = arr.reduce((acc, val) => {
        const { length: l } = acc;
        if(val === 't'){
            acc[l - 1]++;
        }
        else if(acc[l - 1] !== 0){
            acc.push(0);
        };
        return acc;
    }, [0]);
    return res;
};
console.log(countClusters(arr));

आउटपुट

कंसोल में आउटपुट होगा -

[ 1, 3, 6, 1 ]
  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