@Katsimoto

Почему длина строки не соответствует?

Добрый день. Получаю через stdin ввод с консоли. Ввожу, например, 12. Беру длину строки, показывает 4. Подскажите пожалуйста, почему 4, а не 2? И как сделать так чтобы было 2. Код:
process.stdin.on('readable', () => {
	let input_data
	input_data = process.stdin.read()
	console.log(input_data.length)
});
  • Вопрос задан
  • 134 просмотра
Решения вопроса 2
Полученный буфер следующий:
<Buffer 31 32 0d 0a>

Последние два значения это служебные символы (не уверен по поводу предпоследнего)

Решение:

- указать кодировку process.stdin.setEncoding('utf-8');
- обрезать лишние символы input_data .trim()
Ответ написан
В данном случае у тебя есть пробелы сначала строки и вконце их невидно, но консоль их создаёт, используй метод trim,что бы удалить все пробелы перед преобразованием в строку, потому что сейчас ты возвращаешь тип данных буфер
console.log(input_data.toString().trim().length)
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы