Как создать объект с помощью функции карты?

Я хочу создать массив для раскрывающегося списка моего приложения для выбора возраста. Однако я не хочу вводить все возрасты от 10 до 80. Я могу создать массив с помощью методов цикла for и push, но я не смог создать формат для раскрывающегося списка.

Вы можете найти ниже формат массива ниже.

const ageData = [{ value: 10 }, { value: 11 }, { value: 12 }];
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
2
0
49
3
Перейти к ответу Данный вопрос помечен как решенный

Ответы 3

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.

Спасибо Крис за быстрый ответ

sinan 18.01.2019 15:48

Вы можете использовать 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 18.01.2019 15:13

@Chris .map() не работает напрямую с пустым массивом или массивом с неопределенными значениями. Мы должны предложить другие альтернативы.

Mohammad Usman 18.01.2019 15:17

Он работает не с пустым массивом, а с неопределенными значениями. Проверьте мой ответ

Chris 18.01.2019 15:22

Другие вопросы по теме