Computer >> 컴퓨터 >  >> 프로그램 작성 >> JavaScript

이진수를 문자열로 받아 10진수로 해당하는 숫자를 반환하는 JavaScript 프로그램

<시간/>

이진수를 문자열로 받아 10진수로 반환하는 JavaScript 함수를 작성해야 합니다. 따라서 함수에 대한 코드를 작성해 보겠습니다.

이것은 매우 간단합니다. for 루프를 사용하여 문자열을 반복하고 각 전달 비트에 대해 다음과 같이 현재 비트 값을 추가하여 숫자를 두 배로 늘립니다.

예시

const binaryToDecimal = binaryStr => {
   let num = 0;
   for(let i = 0; i < binaryStr.length; i++){
      num *= 2;
      num += Number(binaryStr[i]);
   };
   return num;
};
console.log(binaryToDecimal('1101'));
console.log(binaryToDecimal('1101000'));
console.log(binaryToDecimal('10101'));

출력

콘솔의 출력은 -

13
104
21