JSFiddle - React, Tailwind, and code Playground
by KgomDr
JavaScript
const Endianness = new Uint8Array(new Uint32Array([0x12345678]).buffer)[0] === 0x78 ? "little" : "big";
const byte_to_bits = byte => {
if (byte > 255 || byte < 0 || isNaN(byte)) throw new Error("Byte is smaller than 0 or bigger than 255.");
const ret = new Array(8);
for (let i = 0; i < 8; i++){
console.log(i, byte & (1 << i))
ret[i] = (byte >> i & 1) === 1 ? 1 : 0;
// if the least significant bit is placed last.
}
if (Endianness === "big")
ret.reverse();
return ret
}
console.log(byte_to_bits(5));