/** * 将整数转为二进制数 并输出每一位的值到数组中 从低位到高位 二进制位数可指定 (多的裁切 不够的补0) */ export default function getBinaryDigits(num = 0, bits = 16) { // 将数值转换为二进制字符串 let binaryStr = num.toString(2); let len = binaryStr.length; // 位数过多的裁切 不够的补0 if (len > bits) { let start = len - bits; binaryStr = binaryStr.slice(start); } else if (len < bits) { let len0 = bits - len; let preStr = new Array(len0 + 1).join("0"); binaryStr = preStr + binaryStr; } // 将二进制字符串转换为数组 let binaryArray = binaryStr .split("") .map((v) => v * 1) .reverse(); return binaryArray; }