ФорумПрограммированиеJavaScript → ошибка: не определено свойство length

ошибка: не определено свойство length

  • tonche

    Сообщения: 1 Репутация: N Группа: Кто попало

    Spritz 20 октября 2016 г. 6:29

    На сайте крутится процедура

    
    function encode(text) {
        var str = '';
        for (var i = 0; i < text.length; i++) {
            var zn = '';
            for (var j = 0; j < text[i].length; j++) {
                zn = zn + '.' + text[i].charCodeAt(j);
            }
            str = str + zn;
        }
        return (str);
    }
    

    В 90% мест работает корректно, в 10% выдает ошибку "Не удалось получить свойство "length" ссылки, значение которой не определено или является NULL"
    При этом отладчик IE11 говорит, что text="123", text.length = 3, но text[0].length не определено, wtf?

  • AlexB

    Сообщения: 4288 Репутация: N Группа: в ухо

    Spritz 20 октября 2016 г. 11:11, спустя 4 часа 42 минуты 11 секунд

    Видимо работает когда text не строка

  • Ivan.

    Сообщения: 494 Репутация: N Группа: Адекваты

    Spritz 6 ноября 2016 г. 13:03, спустя 17 дней 2 часа 52 минуты

    Так ваш код будет выглядеть более понятным и быстрым

    const encodeText = text => [...text].map(char => char.charCodeAt(0)).join('.')

Пожалуйста, авторизуйтесь, чтобы написать комментарий!