Javascript
 Computer >> コンピューター >  >> プログラミング >> Javascript

JavaScriptで変換せずにバイナリを追加する


問題

最初と2番目の引数として2つのバイナリ文字列str1とstr2を受け取るJavaScript関数を作成する必要があります

この関数は、2つの2進数の合計を返す必要があります。 2進数を10進数に変換してから加算することは許可されておらず、結果の合計にはゼロがまったく含まれていないはずです。

たとえば、関数への入力が-

の場合

入力

const str1 = '1101';
const str2 = '10111';

出力

const output = '100100';

以下はコードです-

const str1 = '1101';
const str2 = '10111';
const addBinary = (str1 = '', str2 = '') => {
   str1 = str1.split('').reverse();
   str2 = str2.split('').reverse();
   let res = '', temp = 0;

   while (str1.length || str2.length || temp) {
      temp += (~~str1.shift()) + (~~str2.shift());
      let mod = temp % 2;
      res = mod + res;
      temp = temp > 1;
   };
   return (+res) ? res.replace(/^0+/, '') : '0';
};
console.log(addBinary(str1, str2));

出力

100100

  1. 配列をJavaScriptで設定するように変換する

    以下は、JavaScriptで配列を設定に変換するためのコードです- 例 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Document</title> <style>  

  2. Javascriptプロトタイプへのメソッドの追加

    以下は、JavaScriptプロトタイプにメソッドを追加するためのコードです- 例 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Document</title> <style>