[英]Template literal, weird output
我正在使用基于 TCP/IP 的 ASTM 使用一些实验室设备。 得到一些奇怪的行为。 仅使用 Node 和网络 package。
socket.on('data', data => {
let str = data.toString('ascii');
console.log(`the string ---- ${str}`);
if (str === ENQ) {
socket.write(ACK);
} else {
console.log(str);
}
outputs (given correct input):
E1 string ---- 1H|\^&|||1^Analyzer 1^6.0|||||||P||20201216150358
E1|\^&|||1^Analyzer 1^6.0|||||||P||20201216150358
我需要破折号后顶行的东西,但是“The”变成了 E1,然后 E1 向下移动到下一行并替换了 1H。 这里发生了什么? 我希望它与 console.log 有关,所以我仍然可以得到我正在寻找的结果。
所以看起来一些控制字符让 output 变得很奇怪。 在行尾,行尾有一个 CR 和 ETX,后面是行的校验和。 因此,回车似乎将 cursor 发送回行的前面,并将 ETX 和校验和代替“The”
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.