@urajo

Как записать данные в переменную?

function createGps(gps){
  let block = '';
  gps.forEach(function(item){
    let div = document.createElement('div');
    div.classList.add('location__wrap');
    div.innerHTML = '<h2>' + item.name + '</h2>' + '<ul>' + compound(item.location) + '</ul>';
  });

  return block;
};


В конце каждой итерации цикла в div
604e664b01c1f328374335.png

div из всех итераций мне нужно записать в 1 переменную block.
Пробовал block += div; но на выходе получаю просто [object HTMLDivElement][object HTMLDivElement]
Как записать содержимое div в Block как строку, что бы я потом мог спокойно вставить в html
  • Вопрос задан
  • 97 просмотров
Решения вопроса 2
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
function createGps(gps) {
  return gps
    .map(item => `<div class="location__wrap"><h2>${item.name}</h2><ul>${compound(item.location)}</ul></div>`)
    .join('');
}
Ответ написан
Комментировать
@microbot
function createGps(gps) {
  var block = '';
  gps.forEach(function(item){
    let div = document.createElement('div');
    div.classList.add('location__wrap');
    div.innerHTML = '<h2>' + item.name + '</h2>' + '<ul>' + compound(item.location) + '</ul>';
    block += div.outerHTML;
  });
  return block;
}
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
sergiks
@sergiks Куратор тега JavaScript
♬♬
Можно складывать созданные элементы не в строку, а в массив, который и возвращать:
const block = [];
gps.forEach(....
  block.push(div);
});

return block;
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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