Hyubert
@Hyubert
JS

Почему выбывает ошибку в js?

Играюсь с js, написал вот такое

тут есть список с которого могжно убирать следущий или предедущий обект, а также сам обект

пока существует хотябы одна li, то все работает, как только убрать все и попробовать создать новый выбывает ошибку

не работает эта строка
el.innerHTML = 'item' +  (myList.lastElementChild.textContent ? 
(parseNum(myList.lastElementChild.textContent) + 1 ) : 1);


если точнее метод .textContent

пробовал поставить оперетор ? чтобы проверять существует ли контент елемента, но не помогло

Как исправить даную ошибку? может что то посоветуете. Спасибо
  • Вопрос задан
  • 116 просмотров
Решения вопроса 3
@Sayto
Проверяйте наличие child в списке, а не его свойство.
el.innerHTML = 'item' +  (myList.lastElementChild ?
(parseNum(myList.lastElementChild.textContent) + 1 ) : 1);
Ответ написан
Комментировать
@MrTimon
Когда удаляешь все элементы то список пустой соответственно у тебя нету элемента myList.lastElementChild. Допиши проверку на существование lastElementChild. Тоисть измени строку на следующую

el.innerHTML = 'item' +  (myList.lastElementChild && myList.lastElementChild.textContent ? (parseNum(myList.lastElementChild.textContent) + 1 ) : 1);
Ответ написан
Комментировать
0lorin
@0lorin
программист
Свитчи не нужны мимокрокодил.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы