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

बाइनरी स्ट्रिंग्स को एक साथ जोड़ना JavaScript

<घंटा/>

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

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

यदि दो तार हैं -

const str1 = "1010";
const str2 = "1011";

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

const output = '10101';

उदाहरण

const str1 = "1010";
const str2 = "1011";
const addBinary = (str1, str2) => {
   let carry = 0;
   const res = [];
   let l1 = str1.length, l2 = str2.length;
   for (let i = l1 - 1, j = l2 - 1; 0 <= i || 0 <= j; --i, --j) {
      let a = 0 <= i ? Number(str1[i]) : 0,
      b = 0 <= j ? Number(str2[j]) : 0;
      res.push((a + b + carry) % 2);
      carry = 1 < a + b + carry;
   };
   if (carry){
      res.push(1);
   }
   return res.reverse().join('');
};
console.log(addBinary(str1, str2));

आउटपुट

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

10101

  1. जावास्क्रिप्ट कॉन्स्ट

    जावास्क्रिप्ट कॉन्स्ट घोषणाएं वेरिएबल बनाती हैं जिन्हें किसी अन्य मान पर पुन:असाइन नहीं किया जा सकता है या बाद में पुन:घोषित नहीं किया जा सकता है। इसे ES2015 में पेश किया गया था। जावास्क्रिप्ट कॉन्स्टेबल डिक्लेरेशन के लिए कोड निम्नलिखित है - उदाहरण <!DOCTYPE html> <html> <head> &l

  1. जावास्क्रिप्ट में कॉन्स्ट बनाम लेट।

    Const and let को ES2015 में ब्लॉक स्कोप्ड वेरिएबल घोषित करने के लिए पेश किया गया था। जबकि लेट का उपयोग करके घोषित चर को पुन:असाइन किया जा सकता है, यदि उन्हें कॉन्स का उपयोग करके घोषित किया गया है तो उन्हें पुन:असाइन नहीं किया जा सकता है। जावास्क्रिप्ट में लेट और कॉन्स्ट दिखाने वाला कोड निम्नलिखित ह

  1. जावास्क्रिप्ट में टेम्प्लेट स्ट्रिंग्स।

    टेम्पलेट को ES6 में एक स्ट्रिंग के अंदर एम्बेड अभिव्यक्ति की अनुमति देने के लिए पेश किया गया था। वे या उद्धरण चिह्नों के स्थान पर बैकटिक (``) का प्रयोग करते हैं। वे स्ट्रिंग इंटरपोलेशन का एक बेहतर तरीका प्रदान करते हैं और अभिव्यक्तियों को ${a+b} जैसे तरीके से एम्बेड किया जा सकता है। यह + ऑपरेटर की