gpt4 book ai didi

javascript - 从分割的字符串创建对象

转载 作者:行者123 更新时间:2023-12-03 06:35:50 28 4
gpt4 key购买 nike

我需要你们的帮助。我需要从分割的字符串创建一个对象。让我向您展示我的代码并进行解释,希望你们能帮助我。这是我当前的代码

for(d in data){
var item = d.split('_');
console.log(item + " " + data[d]);
if(item[0] == 'partnerX'){
//Rest of the code goes here
}else if(item[0] == 'partnerY'){
//Rest of the code goes here
}
}

我的 for 循环内的 console.log(d + ""+ data[d])

partnerX_row1_id      10101010
partnerX_row10_id 79899899

我的console.log(d.split('_') + data[d])

partnerX,row1,id      10101010
partnerX,row10,id 79899899
partnerX,row11,id 99999999
partnerX,row1,name test13
partnerX,row10,name test10
partnerX,row11,name test1
partnerY,row1,id 10101010
partnerY,row10,id 79899899
partnerY,row11,id 99999999
partnerY,row1,name test12
partnerY,row10,name test77
partnerY,row11,name test889

我的问题是最终结果应该如下所示,但我只是不知道如何正确循环数据,然后将其推送到数组并将数组转换为对象或直接创建对象,这看起来像这样.

{
"partnerx": {
"partnerx_row1" : {
"id": 3456788,
"name": "creditor 1"
},
"partnerx_row10" : {
"id": 79899899,
"name": "test10"
},
"partnerx_row11" : {
"id": 99999999,
"name": "test1"
}
},
"partnery": {
"partnery_row1" : {
"id": 10101010,
"name": "test12"
},
"partnery_row10" : {
"id": 79899899,
"name": "test77"
},
"partnery_row11" : {
"id": 99999999,
"name": "test889"
}
}
}

希望大家能帮帮我。如果您需要任何其他信息,请告诉我,我会提供。预先感谢您

最佳答案

这是代码。结果存储在 obj 中。

obj = {};
for(d in data) {
var item = d.split('_');
item[0] = item[0].toLowerCase();
if (obj[item[0]] == undefined) {
obj[item[0]] = {};
}
if (obj[item[0]][item[0] + "_" + item[1]] == undefined) {
obj[item[0]][item[0] + "_" + item[1]] = {};
}
obj[item[0]][item[0] + "_" + item[1]][item[2]] = data[d];
}

关于javascript - 从分割的字符串创建对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38217127/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com