js中如何将字符串类型的二进制进行位运算

js中如何将字符串类型的二进制进行位运算,

或者说我有一个二维数组里面存的0和1我如何给整成二进制的格式

img

以前的笔记,希望能够帮到你

// 使用parseInt()函数将字符串转换为整数,传入2作为进制参数
let binary = '1111'
let num = parseInt(binary, 2)  // num = 15

// 位运算符进行位运算
let a = 15   // 1111
let b = 3    // 0011

a & b        // 3   (1111 & 0011 = 0011)
a | b        // 15  (1111 | 0011 = 1111) 
~a           // -16 (1111 -> 0000 -> 1111 -> 10000) 
a ^ b        // 12  (1111 ^ 0011 = 1100)
a << 2       // 60  (1111 -> 111100)
a >> 2       // 3   (1111 -> 11)  
a >>> 2      // 3   (1111 -> 11)  

// 字符串二进制数的位运算
let binary1 = '1111'
let binary2 = '0011'

let num1 = parseInt(binary1, 2)   // 15
let num2 = parseInt(binary2, 2)   // 3 

let res = num1 & num2            // 3
let binaryRes = res.toString(2)  // '0011'

答案来自GPT

// 定义两个字符串类型的二进制
var binaryStr1 = "1100";
var binaryStr2 = "1010";

// 将字符串类型的二进制转换成数字类型的二进制
var binaryNum1 = parseInt(binaryStr1, 2);
var binaryNum2 = parseInt(binaryStr2, 2);

// 进行按位与运算
var result = binaryNum1 & binaryNum2;

// 将数字类型的二进制转换回字符串类型的二进制
var resultStr = result.toString(2);

console.log(resultStr); // 输出"1000"