Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 有条件地向对象添加键值_Javascript_Object - Fatal编程技术网

Javascript 有条件地向对象添加键值

Javascript 有条件地向对象添加键值,javascript,object,Javascript,Object,我有一个像这样的空物体 设queryParams={} 我想有条件地向此添加一些对象: if(status){ //add this adminapproval:req.body.approvalStatus } if(type){ //add this $or: [ Sequelize.where(Sequelize.fn('concat_ws', Sequelize.col('firstName'), ' ', Sequelize.col('lastNam

我有一个像这样的空物体

设queryParams={}

我想有条件地向此添加一些对象:

if(status){
  //add this 
  adminapproval:req.body.approvalStatus
}

if(type){
  //add this
  $or: [
        Sequelize.where(Sequelize.fn('concat_ws', Sequelize.col('firstName'), ' ', Sequelize.col('lastName')), {
                  $like: '%' + keyword + '%'
                }),
    { email: { $like: '%' + keyword + '%' } },
    { company: { $like: '%' + keyword+ '%' } },
    { mobileNo: { $like: '%' + keyword+ '%' } },
    { city: { $like: '%' + keyword+ '%' } },
    { country: { $like: '%' + keyword+ '%' } }
]} 
如果这两个条件为真,则最终对象如下所示:

{
  adminapproval:req.body.approvalStatus,  
  $or: [
    Sequelize.where(Sequelize.fn('concat_ws', Sequelize.col('firstName'), ' ', Sequelize.col('lastName')), {
      $like: '%' + keyword + '%'
    }),
      { email: { $like: '%' + keyword + '%' } },
      { company: { $like: '%' + keyword+ '%' } },
      { mobileNo: { $like: '%' + keyword+ '%' } },
      { city: { $like: '%' + keyword+ '%' } },
      { country: { $like: '%' + keyword+ '%' } }
  ]
}

我的解决方案是将这个单独的对象放入数组中,并在aloop中构建对象,但我认为这是一种不好的方法。还有其他方法吗?

如果要向对象添加新的键值对,只需将value object.newkey赋值给对象,就好像对象已经有了该键值一样

let queryParams = {};
if(/*condition*/){
    queryParams.adminapproval=req.body.approvalStatus;
}
if(/*condition2*/){
    queryParams.key1=value1;
    queryParams.key2=value2;
}
希望这就是你想要的