Как Вы получаете доступ к информации об уровне байта в JavaScript?

Общепринятый ответ - то, что Вы не можете. Однако там монтирует доказательство, что это не верно на основе существования проектов, которые читают в типах данных, которые не являются основными типами HTML. Некоторые проекты, которые делают это, являются версией JavaScript ProtoBuf и Дымовой завесы.

Дымовая завеса является интерпретатором флэш-памяти, записанным в JS поэтому, если не возможно достигнуть байты непосредственно, как эти проекты работают вокруг этого? Источник к Дымовой завесе может быть найден здесь. Я просмотрел его, но с JS, не являющимся моим основным языком прямо сейчас, решение ускользает от меня.

6
задан Pointy 3 June 2010 в 13:15
поделиться

2 ответа

Они оба выглядят как использование String (в данном случае responseText из XMLHttpRequest) непосредственно как набор байтов.

data = ... // a binary string
bytes = [];
for ( i = 0; i < data.length; i++ )
{
  // This coverts the unicode character to a byte stripping
  // off anything past the first 8 bits
  bytes[i] = data.charCodeAt( i ) & 0xFF;
}
1
ответ дан 17 December 2019 в 22:11
поделиться

Protobuf творит всю свою магию с полем XMLHttpRequest.requestText, которое является просто строкой DOMString.

0
ответ дан 17 December 2019 в 22:11
поделиться
Другие вопросы по тегам:

Похожие вопросы: