Преобразование двоичного числа в десятичное из массива на JavaScript

Рейтинг: -1Ответов: 2Опубликовано: 15.01.2023

Например есть массив двоичного числа, как его переобразовать в целое десятичное?

const binary = [0, 0, 0, 1];

Ответы

▲ 2Принят

Вот так можно конвертировать двоичные числа в десятичные:

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)}`);

▲ 0

Можно ещё вот так :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)