如何在JavaScript中访问字节级信息?

Que*_*mer 6 javascript byte bytecode

普遍接受的答案是,你不能.然而,越来越多的证据表明,基于读取非基本HTML类型的数据类型的项目的存在,情况并非如此.执行此操作的一些项目是ProtoBufSmokescreen的JavaScript版本.

Smokescreen是一个用JS编写的flash解释器,所以如果不能直接得到字节,这些项目是如何解决的?Smokescreen的来源可以在这里找到.我已经看了一遍,但现在JS不是我的主要语言,解决方案让我望而却步.

jim*_*imr 1

它们看起来都直接使用 a String(在本例中responseText是 an 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;
}
Run Code Online (Sandbox Code Playgroud)