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

JavaScript में सरणी से इंडेक्स को रैंडमली चुनना


समस्या

हमें एक JavaScript फ़ंक्शन लिखना है जो संख्याओं की एक सरणी arr लेता है, जिसमें संभवतः डुप्लिकेट हो सकते हैं, पहली आर्ग्युमेंट के रूप में और एक पूर्णांक जो सरणी में मौजूद है, दूसरी आर्ग्युमेंट के रूप में।

फ़ंक्शन को उस इंडेक्स को वापस करना चाहिए जिस पर संख्या सरणी में मौजूद है और चूंकि संख्या सरणी में एक से अधिक बार मौजूद हो सकती है, हमें बेतरतीब ढंग से एक इंडेक्स चुनकर वापस करना होगा।

उदाहरण

यदि फ़ंक्शन का इनपुट है:

const arr = [5, 3, 6, 7, 3, 4, 2, 3]; const num = 3;

तो आउटपुट होना चाहिए:

const output = 4;

आउटपुट व्याख्या:

संख्या 3 सरणी में इंडेक्स 1, 4 और 7 पर मौजूद है, और चूंकि हमें बेतरतीब ढंग से कोई इंडेक्स चुनना है, इसलिए आउटपुट 1 में से कोई भी हो सकता है।

कोड

const arr = [5, 3, 6, 7, 3, 4, 2, 3]; const num = 3; Array.prototype.pick = function(target) {    const targets = []    this.findTarget(0, this.length, target, targets);    return targets[Math.floor(Math.random() * targets.length)]; }; Array.prototype.findTarget = function(start, end, target, targets) {    if(start + 1 === end || start === end) {       if(this[start] === target) targets.push(start);       return;    }    let j = start + Math.floor((end - start)/2);    this.findTarget(start, j, target, targets);    this.findTarget(j, end, target, targets); }; console.log(arr.pick(num));

आउटपुट

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

4
  1. जावास्क्रिप्ट Array.from() मेथड जावास्क्रिप्ट Array.from() मेथड

    जावास्क्रिप्ट का from() मेथड किसी ऑब्जेक्ट से जिसमें length प्रॉपर्टी हो या किसी इटरेबल ऑब्जेक्ट से Array ऑब्जेक्ट लौटाने के लिए उपयोग किया जाता है। सिंटैक्स इस प्रकार है: Array.from(obj, mapFunction, thisArg) ऊपर, पैरामीटर obj एरे में बदलने वाला ऑब्जेक्ट है, mapFunction कॉल करने के लिए मैप फंक्शन

  1. जावास्क्रिप्ट Array findIndex() फंक्शन जावास्क्रिप्ट Array findIndex() फंक्शन

    जावास्क्रिप्ट का findIndex() मेथड एरे में पहले एलिमेंट का इंडेक्स लौटाने के लिए उपयोग किया जाता है, यदि कंडीशन पास होती है। सिंटैक्स इस प्रकार है: array.findIndex(function(currentValue, index, arr), thisValue) उदाहरण 1 = 400; } function display() { document.getElementById(demo).inner

  1. JavaScript Array.from(): एरे-लाइक से एरे बनाएं JavaScript Array.from(): एरे-लाइक से एरे बनाएं

    Array.from() एक स्थिर मेथड है जो एरे-लाइक या इटरेटर ऑब्जेक्ट्स से एक नया, शैलो-कॉपीड एरे इंस्टेंस बनाता है। यह arguments, NodeList, Set, Map, स्ट्रिंग्स, आदि को एरे में बदलने का मानक तरीका है। उदाहरण { const arr = Array.from(str); fillEle.innerHTML = एरे: + arr.join(, ); })