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

जावास्क्रिप्ट में बिटवाइज़ ऑपरेशन से 2 की घात जांचना


हमें एक जावास्क्रिप्ट फ़ंक्शन लिखना है जो एक संख्या लेता है और निर्धारित करता है कि यह 2 की घात है या नहीं।

उदाहरण के लिए -

f(23) = false 
f(16) = true 
f(1) = true 
f(1024) = true

दृष्टिकोण -

बाइनरी रूप में 2 की घातों में हमेशा केवल एक बिट होता है। जैसे -

1: 0001 
2: 0010 
4: 0100 
8: 1000

इसलिए, यह जांचने के बाद कि संख्या शून्य से बड़ी है, हम एक बिटवाइज़ हैक का उपयोग करके टेस्ट कर सकते हैं कि एक और केवल एक बिट सेट है। वही नीचे दिखाया गया है -

num & (num - 1)

उदाहरण

निम्नलिखित कोड है -

const num1 = 256; 
const num2 = 1024; 
const isPowerOfTwo = (num = 1) => { 
  if (num < 1) { 
    return false; 
  } 
  return (num & (num - 1)) === 0; 
}; 
console.log(isPowerOfTwo(num1)); 
console.log(isPowerOfTwo(num2)); 
console.log(isPowerOfTwo(1)); 
console.log(isPowerOfTwo(23));

आउटपुट

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

true true true false
  1. Firebug का उपयोग करके जावास्क्रिप्ट डीबगिंग Firebug का उपयोग करके जावास्क्रिप्ट डीबगिंग

    डीबगिंग दोषों को व्यवस्थित रूप से हटाने की विधि है। यह सब टेस्ट केसेस के एक्जीक्यूशन से शुरू होता है। जब भी टेस्ट केसेस एक्जीक्यूट होते हैं, वास्तविक परिणामों की तुलना अपेक्षित परिणामों से की जाती है। यदि वास्तविक परिणामों और अपेक्षित परिणामों के बीच कोई पत्राचार नहीं है, तो रूट कॉज विश्लेषण किया जा

  1. JavaScript इम्पोर्ट्स में  { }  का उपयोग JavaScript इम्पोर्ट्स में '{ }' का उपयोग

    JavaScript इम्पोर्ट्स में {} का उपयोग करने का निम्नलिखिक कोड है:उदाहरण<!DOCTYPE html> <html lang="hi"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Import wi

  1. बिटवाइज़ ऑपरेशन्स का उपयोग करके 2 से जोड़ और गुणा करने का C प्रोग्राम बिटवाइज़ ऑपरेशन्स का उपयोग करके 2 से जोड़ और गुणा करने का C प्रोग्राम

    बिटवाइज़ ऑपरेटर्स बिट्स पर ऑपरेट करते हैं (यानी ऑपरेंड के बाइनरी मानों पर)। ऑपरेटर विवरण & बिटवाइज़ AND | बिटवाइज़ OR ^ बिटवाइज़ XOR << लेफ्ट शिफ्ट >> राइट शिफ्ट ~ वन्स कॉम्प्लीमेंट उदाहरण बिटवाइज़ ऑपरेटर्स की मदद से 2 से जोड़ और गुणा करने का C प्रोग्राम: #inclu