好吧,我需要在Object内放置一个数组串联。

因此,我制定的有效解决方案是:

      const usersList = {
        tester: [{ id: 1, //... }, //...],
        custumers: [{ id: 1, //... }, //...],
        admin: [{ id: 1, //... }, //...]
      }

      let allUsers = []

      Object.keys(usersList).forEach(listKey => {
        allUsers = [
          ...allUsers,
          ...usersList[listKey]
        ]
      })

      return allUsers


此外,我想知道也许存在一种新颖的方式来处理这种情况吗?我尝试了这个,但是没有用:

[...Object.keys(usersList).map(listKey => usersList[listKey])]

最佳答案

取对象的值,它将为您提供一个数组数组,然后展平:

const allUsers = Object.values(usersList).flat();


如果您不能使用.flat,则:

const allUsers = [].concat.apply(...Object.values(usersList));

10-06 00:10