Всем привет!
Имеется простейший код для работы с карт-ридером (HID-устройство):
'use strict';
const express = require('express');
const app = express();
const HID = require('node-hid');
const device = new HID.HID(2303, 9);
let partsCount = 0;
let wholeCardData = '';
device.on("data", function(data) {
// 331d9165z
partsCount++;
wholeCardData += data.toString();
if (partsCount === 18) {
let zPos = wholeCardData.indexOf("z");
if (zPos !== -1) {
wholeCardData = wholeCardData.substr(0, zPos);
}
console.log(wholeCardData + ' d');
console.log(wholeCardData + ' s');
partsCount = 0;
wholeCardData = '';
}
});
app.get('/', function (req, res) {
res.send('Hello World!');
});
app.listen(3000, function () {
console.log('Example app listening on port 3000!');
});
На экране вижу:
331d9165z &#" d
&#" s
Ничего не понимаю! Почему слетает значение переменной wholeCardData ?