将字节数组转储为十六进制值

ygo*_*goe 1 javascript firefox

在Firefox上的JavaScript中,Uint8Array在控制台上显示如下console.log:

Uint8Array […]
0: 131
1: 165
2: 116
3: 111
4: 112
Run Code Online (Sandbox Code Playgroud)

如何将其显示为十六进制值,如下所示:

Uint8Array […]
0: 0x83
1: 0xa5
2: 0x74
3: 0x6f
4: 0x70
Run Code Online (Sandbox Code Playgroud)

我正在尝试调试一些websocket通信,并且必须在格式规范中查找仅列出十六进制值的字节.

Poi*_*nty 5

你不能让控制台这样做(至少我知道无法做到这一点),但你可以显式转换数组:

console.log([].map.call(yourArray, x => x.toString(16))
Run Code Online (Sandbox Code Playgroud)

编辑 - 感谢纠正; 键入的数组从它们返回新的类型数组.map().

你也可以用它做一个常规数组Array.from().