javascript - 在js中将字符串转换为十六进制

标签 javascript string node.js hex

我正在使用 node.js,我有一个字符串,我正试图将其转换为十六进制。

这是我正在使用的函数:

function toHex(str) {
    var hex = '';
    var i = 0;
    while(str.length > i) {
        hex += ''+str.charCodeAt(i).toString(16);
        i++;
    }
    return hex;
} 

这就是我尝试调用它的方式:

console.log('Payload: ' + toHex(decryptedPayload));

但是当它运行时我得到这个错误:

            hex += ''+str.charCodeAt(i).toString(16);
                          ^ TypeError: undefined is not a function
at toHex (C:\Users\Office\Desktop\luigi-master\lib\middleware.js:131:17)
at Middleware._transform (C:\Users\Office\Desktop\luigi-master\lib\middleware.js:161:29)
at Middleware.Transform._read (_stream_transform.js:179:10)
at Middleware.Transform._write (_stream_transform.js:167:12)
at doWrite (_stream_writable.js:301:12)
at writeOrBuffer (_stream_writable.js:288:5)
at Middleware.Writable.write (_stream_writable.js:217:11)
at Packetize.ondata (_stream_readable.js:540:20)
at Packetize.emit (events.js:107:17)
at readableAddChunk (_stream_readable.js:163:16)

最佳答案

如果你有一个Buffer,你可以调用toString()直接传递你想要的输出类型,例如:decryptedPayload.toString('hex')

关于javascript - 在js中将字符串转换为十六进制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29447494/

相关文章:

C - 扫描字符并显示 ASCII 码

Node.js 谷歌地图缓存

ruby-on-rails - 符号查找错误: node: undefined symbol: _ZN2v86LockerC1EPNS_7IsolateE

javascript - AngularJS HTTP Get 没有得到响应

删除许可证的javascript缩小?

java - 如何从这个字符串中解析出时间戳?

javascript - 将 HTML5 与 Angularjs、Node/Express 以及 MEAN.js 样板结合使用

javascript - 类似于 Java 中的 Quartz Composer 的图形 block 组合库

javascript - iframe 填充或 ie6(及以下)选择 z-index 错误

python - 正则表达式两组匹配所有内容直到模式