我正在尝试将长度消息转换为ascii。 我的消息长度就像
var ll = "0170";
在node js中,是否有某种转换为ascii的函数? 请帮忙?
这是一个简单的函数(ES6),它使用 charCodeAt()
将字符串转换为 ASCII 字符const toAscii = (string) => string.split('').map(char=>char.charCodeAt(0)).join(" ")
console.log(toAscii("Hello, World"))
输出:
->
72 101 108 108 111 44 32 87 111 114 108 100
您也可以创建一个原型函数。有很多解决方案:)
你不能拥有整个字符串的 ascii 代码。
ascii 代码是字符的整数值,而不是字符串。然后对于你的字符串
"0170"
你将得到4个ascii代码
你可以像这样显示这些ascii代码
var str = "0170";
for (var i = 0, len = str.length; i < len; i++) {
console.log(str[i].charCodeAt());
}
Ouput : 48 49 55 48
使用 charCodeAt() 函数来隐藏 ascii 格式。
var ll = "0170";
function ascii (a) { return a.charCodeAt(); }
console.log(ascii(ll[0]),ascii(ll[1]), ascii(ll[2]), ascii(ll[3]) )
结果:
48 49 55 48
在 javascript 中很简单,您可以使用下面的代码,但您需要根据您的要求处理失败情况,否则您可以使用 npm 包,它提供 ascii-text-converter 以及所有错误处理功能。
function AsciiToText(ascii: string) {
const asciiArray = ascii
.split(" ")
.map((code) => parseInt(code.trim(), 10))
.filter((item) => !isNaN(item));
const sentence = asciiArray
.map((asciiValue) => String.fromCharCode(asciiValue))
.join("");
return sentence;
}