在Javascript中循环Json的最佳方法
所以我有这个设置在Javascript中循环Json的最佳方法,javascript,json,Javascript,Json,所以我有这个设置 [{ "name": "Business", "skip": "0", "pos": "1" }, { "name": "contact", "skip": "1", "pos": "3" }, { "name": "UKSite", "skip": "0", "pos": "2" } ] 然后
[{
"name": "Business",
"skip": "0",
"pos": "1"
},
{
"name": "contact",
"skip": "1",
"pos": "3"
},
{
"name": "UKSite",
"skip": "0",
"pos": "2"
}
]
然后我有了我的数据json
[{
"name": "contact",
"hideShow": true,
"data": {
"con_title": "Sri",
"con_fName": "Jhon",
"con_lName": "Snow",
"emails": ["maheshwar@hsjsk.com", ""],
"phones": ["8867116216", ""]
},
"repeatable": false
}, {
"name": "UKAddress",
"hideShow": true,
"data": {
"addAddress": [{
"add_bilding_num": "BUILDING NAME/NUMBER",
"add_street_name": "STREET",
"add_town": "TOWN",
"add_county": "COUNTY",
"add_pc": "POST CODE",
"add_type": "TYPE"
}, {
"add_bilding_num": "BUILDING NAME/NUMBER",
"add_street_name": "STREET",
"add_town": "TOWN",
"add_county": "COUNTY",
"add_pc": "POST CODE",
"add_type": "TYPE"
}]
},
"repeatable": false
}, {
"name": "Business",
"hideShow": true,
"data": {
"biss_name": "Nano Corporation"
},
"repeatable": false
}, {
"name": "contact",
"hideShow": true,
"data": {
"con_title": "Mr",
"con_fName": "Roshan",
"con_lName": "Aslam",
"emails": ["roshan@throughbit.com"],
"phones": ["8867116216"]
},
"repeatable": true
}, {
"name": "UKSite",
"hideShow": true,
"data": {
"site_name": "naonocrporation.co.uk",
"external_rff": "fsfsfs",
"con_title": "Mr",
"con_fName": "Kash",
"con_lName": "Sangh",
"emails": ["kash@youremail.com"],
"phones": ["8867116216"],
"addAddress": [{
"add_bilding_num": "",
"add_street_name": "",
"add_town": "",
"add_county": "",
"add_pc": "",
"add_type": ""
}],
"ElecMeter": [{
"distrib_id": "DISTRIBUTOR ID",
"pc": "PROFILE CLASS",
"mtc": "METER TIMESWITCH CODE",
"llf": "LINE LOSS FACTOR",
"mpc": "MPAN CORE",
"eac": "EAC",
"c_supplr": "CURRENT SUPPLIER",
"c_date": "CURRENT END DATE",
"select": true
}, {
"distrib_id": "",
"pc": "",
"mtc": "",
"llf": "",
"mpc": "",
"eac": "",
"c_supplr": "",
"c_date": ""
}],
"GasMeter": [{
"mprn": "MPRN",
"aq": "AQ",
"g_c_supplr": "CURRENT SUPPLIER",
"g_c_date": "CURRENT END DATE"
}]
},
"repeatable": true
}]
我必须循环使用数据json,并使用设置json的信息来创建新的json
比如说
我的新json应该是这样的
[{
"name": "Business",
"hideShow": true,
"data": {
"biss_name": "Nano Corporation"
},
"repeatable": false
},
{
"name": "contact",
"hideShow": true,
"data": {
"con_title": "Mr",
"con_fName": "Roshan",
"con_lName": "Aslam",
"emails": [
"roshan@throughbit.com"
],
"phones": [
"8867116216"
]
},
"repeatable": true
},
{
"name": "UKAddress",
"hideShow": true,
"data": {
"addAddress": [{
"add_bilding_num": "BUILDING NAME/NUMBER",
"add_street_name": "STREET",
"add_town": "TOWN",
"add_county": "COUNTY",
"add_pc": "POST CODE",
"add_type": "TYPE"
},
{
"add_bilding_num": "BUILDING NAME/NUMBER",
"add_street_name": "STREET",
"add_town": "TOWN",
"add_county": "COUNTY",
"add_pc": "POST CODE",
"add_type": "TYPE"
}
]
},
"repeatable": false
}
]
您可以观察到,术语skip:1意味着跳过第一个,并添加其余的术语pos:1,它告诉您对象在新数组中的位置
任何帮助都会很好
更新1
我想出了这个片段
ar finalArray=[]
forvar i=0;i谢谢因为您正在处理一组对象,并且希望在迭代过程中根据条件修改每个对象,所以我建议您使用forEach 这里有文档和示例:
wtf这些是电子邮件吗maheshwar@lovejihad.com ?!仅供参考,您可以使用jsonlint.com使用适当的缩进来格式化json。您也可以使用4space选项卡在您的帖子中设置代码块格式。我已对您的文档进行了编辑question@Apolo一个让自己进入中央情报局雷达的相当愚蠢的方式@Balázs请检查我更新的问题,我删除了这些废话:P@Apolo我现在脱离了危险,我们能集中精力解决实际问题吗