Почему не изменяется значение переменой
const craeteAuthor = (i) => {
if (i === 10) {
return {
avatar: `img/avatars/user${i}.png`,
};
}
return {
avatar: `img/avatars/user0${i}.png`,
};
};
const createCard = () => {
for (let i = 1; i <= 10; i++) {
return {
author: craeteAuthor(i),
};
}
};
const cards = Array.from({length: 10}, createCard);
Необходимо сгенерировать массив из десяти объектов, состоящих из нескольких других объектов. С функциями создания других объектов я справился, но с одним - проблема, и так условие: Объект содержит одно поле - строка — адрес изображения вида img/user{{xx}}.png, где {{xx}} — это число от 1 до 10. Перед однозначными числами ставится 0. Например, 01, 02...10. Адреса изображений не повторяются. В примере убрал объекты, с которыми проблем нет. При выполнении данного кода массив с объектами создается, но {{Х}} во всех объектах не меняется и равен 01, как сделать чтобы у всех объектов были разные номера.
Ответы (1 шт):
return завершает выполнение функции. Поэтому i в цикле никогда не становится даже 2.