У меня есть код на jquery.
$('#messages').append($('<li>').text(`${data.username}: ${data.message}`));
Я хочу перейти на js.
const messages = document.getElementById('messages');
messages.append(document.getElementsByTagName('li').text(`${data.username}: ${data.message}`));
Я получаю ошибку
Uncaught TypeError: document.getElementsByTagName(...).text is not a function
Какая разница метода append в jquery и js? Что не так я сделал?
$('#messages').append($('<li>').text(`${data.username}: ${data.message}`));
Вы не совсем правильно перевели jquery в нативный js.
// $('<li>') Тут создается элемент, а не ищется в документе
// Поэтому нужно заменить getElementsByTagName на createElement
const messages = document.getElementById('messages');
const li = document.createElement('li');
// У обычных элементов нет функции text
li.innerText = `${data.username}: ${data.message}`
messages.append(li);
Сборка персонального компьютера от Artline: умный выбор для современных пользователей