как получить некоторые данные из одного большого массива

#javascript

#javascript

Вопрос:

У меня есть js-файл, в котором есть массив людей.

data.js

 const data = [
    [1, '', 'Fresno', 'name 1', 'name 2', 18, 'women'],
    [2, '', 'San Francisco', 'name 1', 'name 2', 20, 'man'],
    [3, '', 'Los Angeles', 'name 1', 'name 2', 22, 'women'],
    [4, '', 'Amador', 'name 1', 'name 2', 23, 'man'],
    [5, '', 'Kern', 'name 1', 'name 2', 33, 'women'],
    [6, '', 'Butte', 'name 1', 'name 2', 32, 'women'],
    [7, '', 'Santa Barbara', 'name 1', 'name 2', 21, 'man'],
];
  

В другом файле я хочу получить данные из массива и сформировать свой массив с данными об имени, поле.

Я использую карту, но не могу понять, как ее реализовать.

 let newData = data.map(({name, gender}) => ({
    value: name,
    group: gender
}))
  

Ответ №1:

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

 const data = [
    [1, '', 'Fresno', 'name 1', 'name 2', 18, 'women'],
    [2, '', 'San Francisco', 'name 1', 'name 2', 20, 'man'],
    [3, '', 'Los Angeles', 'name 1', 'name 2', 22, 'women'],
    [4, '', 'Amador', 'name 1', 'name 2', 23, 'man'],
    [5, '', 'Kern', 'name 1', 'name 2', 33, 'women'],
    [6, '', 'Butte', 'name 1', 'name 2', 32, 'women'],
    [7, '', 'Santa Barbara', 'name 1', 'name 2', 21, 'man'],
];

let newData = data.map((i) => ({
    value: i[3],
    group: i[6]
}))

console.log(newData);