Отличительные уникальные ключи с JSON сервером - PullRequest
0 голосов
/ 29 мая 2020

Я использую json -сервер из typicode, он работает, но можно ли получить запрошенные значения ключей в виде массива?

Например, у меня есть

{
    "users": [
        {
            "name": "ABC",
            "job": "Engineer",
            "age" : 28
        },
        {
            "name": "XYZ",
            "job": "Product Manager",
            "age" : 32
        },
        {
            "name": "ASD",
            "job": "HR Manager",
            "age" : 325
        }
    ]
}

Я хочу получить множество вакансий

["Engineer", "Product Manager", "Human Resource"]

Ответы [ 3 ]

2 голосов
/ 29 мая 2020

let obj = {
    "users": [
        {
            "name": "ABC",
            "job": "Engineer",
            "age" : 28
        },
        {
            "name": "XYZ",
            "job": "Product Manager",
            "age" : 32
        },
        {
            "name": "ASD",
            "job": "HR Manager",
            "age" : 325
        }
    ]
}

console.log([...new Set(obj.users.map(user => user.job))]);
0 голосов
/ 29 мая 2020

Вы можете использовать от map() до l oop через пользователей и создать новый массив с заданиями:

let obj = {
    "users": [
        {
            "name": "ABC",
            "job": "Engineer",
            "age" : 28
        },
        {
            "name": "XYZ",
            "job": "Product Manager",
            "age" : 32
        },
        {
            "name": "ASD",
            "job": "HR Manager",
            "age" : 325
        }
    ]
}

let arr = obj.users.map(user => user.job);

console.log(arr);
0 голосов
/ 29 мая 2020

Думаю, вы можете использовать карту.

const data = {
    "users": [
        {
            "name": "ABC",
            "job": "Engineer",
            "age" : 28
        },
        {
            "name": "XYZ",
            "job": "Product Manager",
            "age" : 32
        },
        {
            "name": "ASD",
            "job": "HR Manager",
            "age" : 325
        }
    ]
}

display.log(data.users.map((it) => it.job))```
...