如何动态创建嵌套对象
How to create nested object dynamically?
我需要使用JavaScript以这种格式创建一个对象。
var results = {
"A-1": [
{ "object": "daily", "type": "when", "field": "Period" }
],
"A-2": [
{ "object": "weekly", "type": "when", "field": "Period" }
],
"A-3": [
{ "object": "monthly", "type": "when", "field": "Period" }
],
"B-1": [
{ "object": "Boston", "type": "who", "field": "City" },
{ "object": "AG", "type": "what", "field": "region" },
{ "object": "L1", "type": "where", "field": "Level" }
],
"B-2": [
{ "object": "New York", "type": "who", "field": "City" },
{ "object": "AG", "type": "what", "field": "region" },
{ "object": "L2", "type": "where", "field": "Level" }
],
"B-3": [
{ "object": "Paris", "type": "who", "field": "City" },
{ "object": "EURO", "type": "what", "field": "region" },
{ "object": "L1", "type": "where", "field": "Level" }
],
"B-4": [
{ "object": "Boston", "type": "who", "field": "City" },
{ "object": "AG", "type": "what", "field": "region" },
{ "object": "L2", "type": "where", "field": "Level" }
]
};
var periodList = "daily,weekly,monthly";
B-
部分键值以JSON格式从web服务返回,如下所示:
[
{ "object": "Boston", "level": "L1", "region": "AG" },
{ "object": "Paris", "level": "L1", "region": "EURO" },
{ "object": "Boston", "level": "L2", "region": "AG" },
{ "object": "China", "level": "L1", "region": "AP" },
{ "object": "New York", "level": "L2", "region": "AG" }
]
每个B-
对象都包含城市、地区和级别数组。
请帮助如何动态创建此结构?
只需使用两个简单的循环:
var results = {};
var periods = periodList.split(",");
for (var i=0; i<periods.length; i++)
results["A-"+(i+1)] = [
{"object": periods[i], "type": "when", "field": "Period"}
];
for (var i=0; i<json.length; i++)
results["B-"+(i+1)] = [
{"object": json[i].object, "type": "who", "field": "City"},
{"object": json[i].region, "type": "what", "field": "region"},
{"object": json[i].level, "type": "where", "field": "Level"}
];
这里没有任意的嵌套,所以您不需要递归或任何重的东西。
相关文章:
- 从对象数组中动态创建嵌套json
- 如何动态创建嵌套对象
- 动态创建嵌套的JSON对象父对象和子对象
- 在RubyonRails中创建嵌套表单
- 正在创建嵌套的if+else-if语句,但函数返回为未定义
- 基于类名创建嵌套列表
- 正在创建嵌套的HTML结构
- 创建嵌套的JSON数组
- 在 d3.js 中创建嵌套的 SVG 节点
- AngularJs:迭代指令内的数组以创建嵌套的指令集
- 如何在解析中创建嵌套的多对多关系
- 煎茶触摸 2:在选项卡面板内创建嵌套列表
- 使用 jQuery 创建嵌套 HTML 元素的最佳方式
- 是否可以在灰尘中创建嵌套的助手.js
- 使用 for 循环 javascript 创建嵌套的空数组
- 如何创建嵌套有 html 内容(模板)的基础弹出框
- 从动态创建的单个列表创建嵌套列表
- JavaScript:如何使用嵌套对象的变量名称创建嵌套对象
- 动态创建嵌套的 JSON 对象
- 如何创建嵌套的 JSON 字符串