Как перебрать массив объектов в ES6 - PullRequest
0 голосов
/ 04 января 2019

Попытка перебрать массив объектов, используя es6, поскольку это очень ново для меня

вот мой массив объектов

[j]
0: j
$extCollectionIndex: 0
data: {ID: "b7f7ce8b-1455-41b3-ac26-b54916f6718f", userId: "444441", userName: "cjtest.1", email: "cjtest@gmail.com",  …}

необходимо вернуть или консоль имя пользователя

Я только что попробовал (отобразить и найти)

let obj = records.map(obj => {return obj.data});

console.log(obj)//[object,object]

Может ли кто-нибудь помочь мне в этом

Ответы [ 3 ]

0 голосов
/ 04 января 2019

Array.prototype.map вернет новый массив. Если вы вернете obj.data, у вас будет массив объектов. Вы должны быть более точными в отношении данных, которые вам нужны.

let obj = records.map(obj => obj.data.userName );
0 голосов
/ 04 января 2019

Просто используйте вашу map функцию вместо record.data.userName, а не просто record.data, вы можете распечатать ее с помощью join. Или используйте цикл forEach с console.log внутри.

Рабочий пример:

function foo(){
  const records = [
      {
          "data": {
              "ID": "b7f7ce8b-1455-41b3-ac26-b54916f6718f",
              "userId": "444441",
              "userName": "cjtest.1",
              "email": "cjtest@gmail.com"
          }
      },
      {
          "data": {
              "ID": "b7f7ce8b-1455-41b3-ac26-b54916f6718f",
              "userId": "444441",
              "userName": "srtkjrthrt",
              "email": "cjtest@gmail.com"
          }
      },
      {
          "data": {
              "ID": "b7f7ce8b-1455-41b3-ac26-b54916f6718f",
              "userId": "444441",
              "userName": "srthstrj",
              "email": "cjtest@gmail.com"
          }
      },
      {
          "data": {
              "ID": "b7f7ce8b-1455-41b3-ac26-b54916f6718f",
              "userId": "444441",
              "userName": "cjghj1",
              "email": "cjtest@gmail.com"
          }
      }
  ]
  const userList = records.map(record => record.data.userName)
  console.log(userList.join(', '))
}

foo()
0 голосов
/ 04 января 2019

Вот вывод

let obj = records.map(obj => {return obj.data.username});

console.log(obj)//cjtest.1

Спасибо, @Weedoze @ gaetanoM

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...