首页 > 解决方案 > 在声明时有条件地将对象添加到数组

问题描述

我有一个对象数组:

  const arr = [
    {
      name: 'John',
      money: 45
    },
    {
      name: 'Lui',
      money: 65
    },
    {
      name: 'Kegan',
      money: 100
    },
    ... isNewUser  ? {
      name: 'Eric',
      money: 90
    } : {}
  ]

我需要在声明不使用时有条件地添加对象array.push。我试过使用 && 运算符,但我得到了错误。isNewUser是一个布尔变量,如果为真,数组应该有 4 个项目,否则数组应该只有 3 个不包括 newUser 对象

标签: javascript

解决方案


您只能将数组传播到数组中。因此,只需将条件元素设为数组即可。

var arr = [{
        name: 'John',
        money: 45
    },
    {
        name: 'Lui',
        money: 65
    },
    {
        name: 'Kegan',
        money: 100
    },
    ...isNewUser ? [{
        name: 'Eric',
        money: 90
    }] : []
]

无论如何,array.push这里看起来仍然是一个更好的选择!


推荐阅读