23/23

Здравствуйте. Задание 23/23 “Знакомство с JS в бразуре”. Почему данный текст показывает какую-то кроказябру с белым квадратом на фоне, да и ещё все элементы раскиданы как попало. Хотя всё идентично примеру?

var makeElement = function (tagName, className, text) {
var element = document.createElement(tagName);
element.classList.add(className);
if (text) {
element.textContent = text;
}
return element;
}

var renderCards = function (array) {
newList = document.querySelector(’.goods’);
var element = array[0];
if (element.inStock) {
var newLi = makeElement(‘li’, ‘good–available’);
}
else {
var newLi = makeElement(‘li’, ‘good–unavailable’);
}
if (element.specialOffer) {
var newH = makeElement(‘h2’, ‘good__special-offer’, element.text);
}
else {
var newH = makeElement(‘h2’, ‘good__description’, element.text);
}
var newImg = makeElement(‘img’, ‘good__image’);
newImg.src = element.imgUrl;
newImg.alt= element.text;
newLi.appendChild(newH);
newLi.appendChild(newImg);
newList.appendChild(newLi);
var newUl = makeElement(‘ul’, ‘goods’);
console.log(newUl);
}

renderCards(cardsData);

у вас с фигурными скобками кажется беда. посмотрите все ли открытые правильно закрыты

Немного не понимаю, причем тут фигурные скобки

С фигурными скобками всё в порядке. Проблема в самом коде. Например, вот эта строка:
var element = array[0]
Почему вы берёте только первый элемент массива, и как в таком случае должны отрисовываться другие данные?
Рекомендую вам посмотреть видеоразбор испытания.