Строка может отображаться визуально пустой, когда вы запрашиваете ее значение, если строка содержит символы, которые не являются нормальными символами.Эти строки могут быть сгенерированы с помощью метода String.fromCharCode
или неявно похожи на '\x0d'
.Такие символы, как Enter, будут отображаться как пустая строка.Вы можете проверить наличие невидимых символов, используя метод charCodeAt
.
Как показал Матус, это будет повторять рассматриваемое поведение:
v = '\x0d'
console.log(v); // ""
console.log(typeof v); // "string"
console.log(v[0]); // ""
console.log(v.length); // "1"