23/23 не проходит проверку, где ошибка?

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

return element;
};

var createCard = function (product) {
var listItem = makeElement(‘li’, ‘good’);

var title = makeElement(‘p’, ‘good__description’, product.text);
listItem.appendChild(title);

var picture = makeElement(‘img’, ‘good__image’);
picture.src = product.imgUrl;
picture.alt = product.text;
listItem.appendChild(picture);

var price = makeElement(‘p’, ‘good__price’, product.price,‘₽/кг’);
listItem.appendChild(price);

var availabilityClass = ‘good–available’;
if (!product.inStock) {
availabilityClass = ‘good–unavailable’;
}
listItem.classList.add(availabilityClass);

if(product.isHit){
listItem.classList.add(‘good–hit’);}

if( product.specialOffer){
listItem.classList.add(‘specialOffer’);
var specialOffer = makeElement(‘p’, ‘good__special-offer’, product.specialOffer);
listItem.appendChild(specialOffer);

}

return listItem;
};

var cardList = document.querySelector(’.goods’);
for (var i = 0; i < cardsData.length; i++) {
var cardItem = createCard(cardsData[i]);
cardList.appendChild(cardItem);
}

Система выводит ошибку «Автор задания не указал в коде решения переменную cardsData»?

Вчера выдавала результат совпадающий с ответом, сегдня пишет это:

TypeError : Cannot read property ‘text’ of undefined

TypeError : Failed to execute ‘appendChild’ on ‘Node’: parameter 1 is not of type ‘Node’.

Эти ошибки скорее всего связаны с кодом вашего решения. Присылайте, будем разбираться.

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

return element;
};

var cardsData = function (product) {
var listItem = makeElement(‘li’, ‘good’);

var title = makeElement(‘p’, ‘good__description’, product.text);
listItem.appendChild(title);

var picture = makeElement(‘img’, ‘good__image’);
picture.src = product.imgUrl;
picture.alt = product.text;
listItem.appendChild(picture);

var price = makeElement(‘p’, ‘good__price’, product.price,‘₽/кг’);
listItem.appendChild(price);

var availabilityClass = ‘good–available’;
if (!product.inStock) {
availabilityClass = ‘good–unavailable’;
}
listItem.classList.add(availabilityClass);

if(product.isHit){
listItem.classList.add(‘good–hit’);}

if( product.specialOffer){
listItem.classList.add(‘specialOffer’);
var specialOffer = makeElement(‘p’, ‘good__special-offer’, product.specialOffer);
listItem.appendChild(specialOffer);

}

return listItem;
};

var cardList = document.querySelector(’.goods’);
for (var i = 0; i < cardsData.length; i++) {
var cardItem = cardsData(cardsData[i]);
cardList.appendChild(cardItem);
}

У вас функция cardsData называется также, как и массив изначальных данных. Ошибки в консоль падают из-за этого.

Спасибо, теперь другое пишет
“Автор задания не указал в коде решения переменную cardsData” (String)

“Автор задания не указал в коде решения переменную cardsData” (String)

“Автор задания не указал в коде решения переменную cardsData” (String)

“Всего проверок: 3, пройдено: 0” (String)

У вас сейчас эту ошибку показывает? Пришлите скриншот, пожалуйста.

Теперь пишет решение неверное, хотя совпадает с Вашим полностью.

Текстовое содержимое при создании цены нужно указывать при помощь конкатенации, то есть должно быть product.price + '₽/кг'.