Задать вопрос
@m_frost

InnerHTML vs document.createElement ???

Суть вопроса нужно с сервера ajax ом подтянуть блоки: текст + картинка.
Чем луче в даном случе пользоватся innerHTML + конкатениция строк(шаблонних)
или каждий елемент отдельно добавлять через createElement потом добавлять класи и атрибути потом textContent с текстом и потом appendChild.
Я понимаю что вариант с innerHTML легче реализовать но меня интересует именно с точки зрения best practice что лучше?
(сори за ошибки руской грамоте не обучен та и роскладку менять впадло)
  • Вопрос задан
  • 673 просмотра
Подписаться 2 Простой Комментировать
Решения вопроса 1
SagePtr
@SagePtr
Еда - это святое
С innerHTML есть побочные эффекты - например, старые элементы, какие там были, будут пересозданы в дереве DOM и они могут потерять то, что было назначено им не через HTML-код документа или изменено в процессе пользователем. Ну и также у textContent преимущество в том, что не нужно беспокоиться об XSS (если злоумышленник загонит туда HTML-тэги).

Кстати, есть ещё один метод - insertAdjacentHTML (он сочетает в себе простоту innerHTML, но не передраконивает предыдущее содержимое)
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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