慕容708150
所以首先,Javascript 没有字节数据类型。它只有数字类型。Javascript 不需要将您的结果存储在单个字节中,即使它适合一个字节。您需要 2 位来存储数字 0、1、2 或 3。另外两个位来存储其他 0、1、2、3。第二个数字需要位移 2 位并添加到第一个数字。这与乘以 4 相同。所以...function encode(m,l) { return m + l * 4;}function decode(byte) { var m = byte % 4; var l = (byte - m ) /4; return {m:m, l:l};}通过查找来执行此操作可能会更快。 (0,0) <=> 0 (1,0) <=> 1 (2,0) <=> 2 (3,0) <=> 3 (0,1) <=> 4 (1,1) <=> 5 (2,1) <=> 6 (3,1) <=> 7 (0,2) <=> 8 (1,2) <=> 9 (2,2) <=> 10 (3,2) <=> 11 (0,3) <=> 12 (1,3) <=> 13 (2,3) <=> 14 (3,3) <=> 15