javascript - 试图将 json obj 推送到 Javascript 中 json obj 的值中
问题描述
我正在尝试将 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 不是函数。我不确定为什么会这样
解决方案
上面代码的问题是 push() 是针对 javascript 数组,但 filter 是一个对象 {}。所以要解决你的问题,你应该这样做
payload.filter=filterAll
代替
payload.filter.push(filterAll)
推荐阅读
- c# - 基于在本地驱动器上创建文件触发 Azure 数据工厂管道的 Powershell 事件
- c# - 使用 XDocument 提取属性时的空值
- iis-8 - 带有 https 的 Microsoft NLB
- python - Python RuntimeWarning:true_divide return n/db/n.sum(), bin_edges 中遇到无效值
- python - 对哪些行进行平均取决于条件的 pandas 数据帧的平均列表
- c - 为什么这个命令会得到一次值?
- javascript - 无法使用 webpack 在 window var 中发布
- fortran - 在编译时使用未知大小的私有数组卸载 OpenMP
- python - 仅当远程 dask-workers 加入时,Dask Cluster 才会失败 read_csv
- node.js - JSON.stringify 和数字自动