Я хочу создать массив для раскрывающегося списка моего приложения для выбора возраста. Однако я не хочу вводить все возрасты от 10 до 80. Я могу создать массив с помощью методов цикла for и push, но я не смог создать формат для раскрывающегося списка.
Вы можете найти ниже формат массива ниже.
const ageData = [{ value: 10 }, { value: 11 }, { value: 12 }];



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


const ageData = new Array(70).fill(1).map((_, index) => ({ value: index + 10 }))
Также вы можете создать помощника, который генерирует этот тип данных более общим способом.
function generateAgeData (from, to) {
return new Array(to - from).fill(1).map((_, index) => ({
value: from + index
}));
}
Использование map() по запросу:
const ageData = [...Array(71)].map((x, i) => ({value: i + 10}));
console.info(ageData);Сначала создайте массив длиной 71. Деструктурировать массив, дав [undefined, undefined, ..., undefined]. Затем, используя map(), выполните итерацию по массиву и верните индекс плюс 10.
Вы можете использовать Array.from():
const ageData = Array.from(
{length: 71}, (_, i) => ({value: i + 10})
);
console.info(ageData);.as-console-wrapper { max-height: 100% !important; top: 0; }ОП просит использовать функцию map() специально.
@Chris .map() не работает напрямую с пустым массивом или массивом с неопределенными значениями. Мы должны предложить другие альтернативы.
Он работает не с пустым массивом, а с неопределенными значениями. Проверьте мой ответ
Спасибо Крис за быстрый ответ