Endianness of JavaScript integer literals

Если я напишу

var n = 0x1234

in Javascript, is

n == 4660

всегда правда? Вопрос также может быть сформулирован следующим образом: обозначает ли 0x1234 последовательность байтов, где 0x12 является первым, а 0x34 - последним байтом? Или 0x1234 обозначает число с основанием 16, причем левая цифра является наиболее значимой?

В первом случае 0x1234 может быть 4660, если интерпретируется как big endian, и 13330, если интерпретируется как little endian.

В последнем случае 0x1234 всегда равно 1 * 4096 + 2 * 256 + 3 * 16 + 4 = 4660.

1 ответ

Решение

0x нотация в JS всегда представляет число с основанием 16, причем левая цифра является наиболее значимой.

Другие вопросы по тегам