Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> JavaScript

Chuyển mảng số nhị phân thành số nguyên tương ứng JavaScript

Cho mảng chứa 0 và 1, viết hàm mảng toBinary() trả về số nguyên tương ứng.

Ví dụ: [1, 0, 1, 1] → 11 (vì nhị phân 1011 = 11 thập phân).

Phương pháp 1: Dùng phương thức thư viện

Dùng parseInt() với cơ số 2:

const arr = [1, 0, 1, 1];const parseArray = arr => {  const binaryString = arr.join('');  return parseInt(binaryString, 2);};console.log(parseArray(arr));

Phương pháp 2: Giảm mảng (Reduce)

Dùng toán tử dịch trái (<<) và OR bitwise (|):

Ví dụ

const arr = [1, 0, 1, 1];const parseArray = arr => {  return arr.reduce((acc, val) => {    return (acc << 1) | val;  });};console.log(parseArray(arr));

Kết quả

Đầu ra trong console sẽ là:

11