He creado una matriz dinámica de objetos que se crea a través de inquirer. Pero no puedo entender cómo acceder a un objeto específico en la matriz EDITAR: así es como la consola ha registrado mi matriz
Entonces, por ejemplo, ¿cómo puedo acceder al segundo ingeniero (Mark)?
Tenga en cuenta que la matriz cambiará según la entrada del usuario
team = [ Manager { name: 'Nicole', id: '1', email: 'nicole@gmail.com', officeNumber: '5' }, Engineer { name: 'Zoe', id: '2', email: 'zoe@gmail.com', github: 'zozo' }, Engineer { name: 'Mark', id: '3', email: 'mark@gmail.com', github: 'emman' }, Engineer { name: 'Joe', id: '4', email: 'joe@gmail.com', github: 'joey' } Intern { name: 'Seb', id: '5', email: 'seb@gmail.com', school: 'UWA' } ]Utilice el método de find . Si no existe tal marca, find el retorno nulo.
Si quieres encontrar al Ingeniero Mark
const result = data.find(x => { return x instanceof Engineer && x.name === 'Mark' })[Actualización] Si quieres encontrar al segundo Ingeniero
const result = data.filter(x => { return x instanceof Engineer })[1]Como mencionó Sepehr jozef , la estructura no es tan útil. Si tomamos su estructura, puede encontrarla a través del método .find .
var team = [ { name: 'Nicole', id: '1', email: 'nicole@gmail.com', officeNumber: '5', }, { name: 'Zoe', id: '2', email: 'zoe@gmail.com', github: 'zozo' }, { name: 'Mark', id: '3', email: 'mark@gmail.com', github: 'emman' }, { name: 'Joe', id: '4', email: 'joe@gmail.com', github: 'joey' }, { name: 'Seb', id: '5', email: 'seb@gmail.com', school: 'UWA' } ] const mark = team.find(function(teamMember){ return teamMember.name === "Mark"; })La variable "marca" contiene ahora el objeto del ingeniero "Marca".
en primer lugar, su estructura es incorrecta.
debería ser:
var team = [ { name: 'Nicole', id: '1', email: 'nicole@gmail.com', officeNumber: '5', }, { name: 'Zoe', id: '2', email: 'zoe@gmail.com', github: 'zozo' }, { name: 'Mark', id: '3', email: 'mark@gmail.com', github: 'emman' }, { name: 'Joe', id: '4', email: 'joe@gmail.com', github: 'joey' }, { name: 'Seb', id: '5', email: 'seb@gmail.com', school: 'UWA' } ]y para obtener la marca (2) debe usar:
team[3].name