Преобразование двоичного числа в десятичное из массива на JavaScript
Например есть массив двоичного числа, как его переобразовать в целое десятичное?
const binary = [0, 0, 0, 1];
Источник: Stack Overflow на русском
Например есть массив двоичного числа, как его переобразовать в целое десятичное?
const binary = [0, 0, 0, 1];
Вот так можно конвертировать двоичные числа в десятичные:
const binary = [1, 0, 0, 0, 1, 1];
function binaryToDecimal(arr) {
tmp = "";
for (let item of arr) {
tmp += item
}
return parseInt(tmp, 2);
}
console.log(`Result: ${binaryToDecimal(binary)}`);
Или так:
const binary = [1, 0, 0, 0, 1, 1];
console.log(`Result: ${parseInt(binary.join(''), 2)}`);
Можно ещё вот так :p
const binary = [1, 0, 1, 0, 1, 0]
let result = 0
for (let i = binary.length - 1; i > -1; i--) {
let current = binary[i]
result += current * 2 ** (binary.length - i - 1)
}
console.log(result)