Как мне пройти через свойства каждого объекта в массиве, свойства у каждого объекта разные. Это джаваскрипт - PullRequest
0 голосов
/ 20 октября 2019
const team =
[ Manager {
    name: 'Chase Lipscomb',
    position: 'Manager',
    id: '5',
    email: 'something@gmail.com',
    office: '15a' },

  Enginner {
    name: 'David Sierra',
    position: 'Engineer',
    id: '6',
    email: 'somethingelse@gmail.com',
    git: 'davidsiearaa' },

  Intern {
    name: 'Joe Dion',
    position: 'Intern',
    id: '7',
    email: 'sometincool@gmail.com',
    school: 'UCI' } ]

Массив с именем team. Это выходные данные программы, для которой я собираюсь создать HTML-документ. Для каждого человека (объекта в массиве) я хочу создать карточку, которая покажет его имя, должность, идентификационный номер и адрес электронной почты. И в зависимости от их должности также добавьте школу для стажера, github для инженера, номер офиса для менеджера. Как получить доступ к свойствам, не указывая их по имени. Например, вместо team.manager.name я хочу сделать что-то вроде team [0] .key (0).

Ответы [ 2 ]

0 голосов
/ 20 октября 2019

Если ваша цель состоит в том, чтобы перебрать массив и получить доступ к каждому ключу элемента, то это соответствующий код.

const team = [
	{
        name: 'Chase Lipscomb',
        position: 'Manager',
        id: '5',
        email: 'something@gmail.com',
        office: '15a'
    },
    {
        name: 'David Sierra',
        position: 'Engineer',
        id: '6',
        email: 'somethingelse@gmail.com',
        git: 'davidsiearaa'
    },
    {
        name: 'Joe Dion',
        position: 'Intern',
        id: '7',
        email: 'sometincool@gmail.com',
        school: 'UCI'
    }
];
team.forEach(member => {
    Object.keys(member).forEach(key => {
        console.log(member[key]);
        //some other stuff
    });
});
0 голосов
/ 20 октября 2019

Чтобы иметь возможность ссылаться на объект team, вам нужно выполнить итерацию по нему дважды, один раз для каждого члена команды и второй раз для данных каждого участника.

Обратите внимание, что я отредактировал вашteam объект.

const team = [{
    Manager: {
    name: 'Chase Lipscomb',
    position: 'Manager',
    id: '5',
    email: 'something@gmail.com',
    office: '15a' },

    Enginner: {
    name: 'David Sierra',
    position: 'Engineer',
    id: '6',
    email: 'somethingelse@gmail.com',
    git: 'davidsiearaa' },

    Intern: {
    name: 'Joe Dion',
    position: 'Intern',
    id: '7',
    email: 'sometincool@gmail.com',
    school: 'UCI' } 
}]
    for (var all in team) {
        var members = team[all]; // object containing all team members
        for (var position in members) {
            var singleMember = members[position];
            console.log(position); // Manager, Engineer, Intern etc
            for (var detail in singleMember) {
                console.log(detail + " = " + singleMember[detail]);
                // name = Chase Lipscomb
                // position = Manager ...
            }
        }
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...