设置嵌套对象属性的更好方法
Better way to set a nested object property?
我目前正在使用弹性搜索,需要在我的对象上设置一些深度嵌套的属性,目前我正在这样设置它们:
this.queryDSL.body.filter = {};
this.queryDSL.body.filter.bool = {};
this.queryDSL.body.filter.bool.must = [];
一种迭代的方式,建立空属性并附加到它们上。我试着像这样一次设置:
this.queryDSL.body.filter.bool.must = []
这会导致一个错误,因为javascript不会以未定义错误的形式在两者之间创建布尔值。
我的方法可以吗?或者有更好的方法吗?最好我想像我的第二个例子一样,一次把它们都设置好。
你的第一个例子很有效,它确实没有什么问题。你也可以这样做:
this.queryDSL.body.filter = {
bool: {
must: [
]
}
}
相关文章:
- 在JavaScript中拆分日期字符串的更好方法是什么
- 设置嵌套对象属性的更好方法
- 用Javascript重新格式化复杂文本日期字符串的更好方法
- 什么'这是从第三个函数上的async 1st函数获得结果的更好方法
- 将数组从javascript格式化为php的更好方法,反之亦然
- jquery:将动画绑定到滚动条位置的更好方法
- 使用较少代码隐藏和显示选择菜单内容的更好方法是什么?javascript
- 编写if-else语句的更好方法
- 传递promise回调方法的更好方法
- 在Knockoutjs中设置计算对象的observableArray的更好方法
- 从网页获取数据的更好方法,而不是使用DOM和HTML元素
- Backbone js代码气味-嵌入子视图的更好方法
- 从数组中删除项的更好方法
- 对多维数组进行分组的更好方法
- 在node.js和express中基于路径运行不同数据库查询的更好方法
- 动态更改测试中代码覆盖率的require语句的更好方法
- 设计具有数据持久性的web应用程序的更好方法
- 选择表行的更好方法
- 在nodejs服务器上提供文件的更好方法,而不是if/else
- Javascript;Ajax——填充对象的更好方法