JavaScript Tutorials

Conversão Decimal para Binário Eficiente em JavaScript

Spread the love

Converter números decimais para seus equivalentes binários é uma tarefa comum na programação. JavaScript oferece maneiras eficientes de realizar essa conversão, e este artigo explora dois métodos principais.

Sumário

Conversão Binária Manual em JavaScript

Entender o algoritmo subjacente aprimora suas habilidades de programação. Esta seção demonstra uma função personalizada para converter um número decimal em sua representação binária. O algoritmo divide repetidamente o número por 2, registrando os restos para construir a string binária.


function decimalToBinary(decimal) {
  if (decimal === 0) return "0"; 
  let binary = "";
  let temp = decimal;
  while (temp > 0) {
    binary = (temp % 2) + binary;
    temp = Math.floor(temp / 2);
  }
  return binary;
}

// Exemplos
console.log(decimalToBinary(10));   // Saída: 1010
console.log(decimalToBinary(255));  // Saída: 11111111
console.log(decimalToBinary(0));    // Saída: 0

A função trata o caso de 0 e iterativamente divide a entrada até que o quociente seja 0. Cada resto (0 ou 1) é prefixado à string binary, construindo a representação binária.

Conversão Binária Eficiente com toString(2)

O método toString(2) embutido do JavaScript fornece uma solução concisa e eficiente. Este método converte diretamente um número para sua representação de string binária.


function decimalToBinaryFast(decimal) {
  return decimal.toString(2);
}

// Exemplos
console.log(decimalToBinaryFast(10));   // Saída: 1010
console.log(decimalToBinaryFast(255));  // Saída: 11111111
console.log(decimalToBinaryFast(0));    // Saída: 0

O método toString(2) recebe o radix (base) como argumento. Definindo-o como 2 especifica a conversão binária. Essa abordagem é significativamente mais rápida e mais legível do que o método manual.

Em conclusão, embora entender o processo de conversão manual seja valioso para aprendizagem, o método embutido toString(2) é a abordagem preferida por sua eficiência e legibilidade na maioria dos cenários práticos.

Deixe um comentário

O seu endereço de email não será publicado. Campos obrigatórios marcados com *