尝试将 json obj 推入 Javascript 中 json obj 的值

时间:2020-12-29 16:10:07

标签: javascript json

我正在尝试将 json obj 推送到 json obj 的值中。

dl = []

payload = {
  "table": ["ric-908a-dffb9c3aaac3"],
  "filter": {},
  "aggregations": {
    "cp_counts": {
      "terms": {
        "field": "cp.raw"
      }
    }
  }
}

if (dl.length == 0) {
  filterAll = {
    "type": "exists",
    "exists": {
      "field": "c_fam.raw"
    }
  }
  payload.filter.push(filterAll)
}

我希望返回看起来像这样:

{
  "table": ["ric-908a-dffb9c3aaac3"],
  "filter": {
    "type": "exists",
    "exists": {
      "field": "c_fam.raw"
    }
  },
  "aggregations": {
    "cp_counts": {
      "terms": {
        "field": "cp.raw"
      }
    }
  }
}

我不断收到:错误:payload.filter.push 不是函数。我不知道为什么会这样

1 个答案:

答案 0 :(得分:1)

上面代码的问题是 push() 是针对 javascript 数组的,而 filter 是一个对象 {}。所以要解决你的问题,你应该这样做

payload.filter=filterAll

代替

payload.filter.push(filterAll)
相关问题