我想用 JSON 发送一个对象,我用一个 for 循环迭代这个对象。我发送的 JSON 是正确的,但问题是数组中有空值。我认为它与myValue.children[index]= item;
我尝试过的 .filter() 方法有关,但它没有解决我的问题,因为返回的数组是空的。我也尝试了一个条件,但我只检测到 4 个值。这是我收到的 JSON:
{
"name":"object",
"children":[
{
"name":"myName",
"children":[
{
"name":"aNumber",
"size":12345
}
]
},
null,
null,
null,
{
"name":"myName",
"children":[
{
"name":"aNumber",
"size":12345
}
]
},
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
{
"name":"myName",
"children":[
{
"name":"aNumber",
"size":12345
}
]
},
{
"name":"myName",
"children":[
{
"name":"aNumber",
"size":12345
}
]
}
]
}
这是我的代码:
function myFunction(index, tabItem , callback){
var result = '';
var myValue = {};
var childrenTicket = [];
myValue.name = "object";
myValue.children = childrenTicket;
for (index in tabItem) {
try{
var currentItem = tabItem[index];
var Object =currentItem.issuelinks.issuelinktype.outwardlinks.issuelink;
for(var SeveralObject in Object) {
var item = {};
var specificObject = Object[SeveralObject];
var main = specificObject._;
var id = specificObject.$.id;
var descriptionObject = {};
descriptionObject.name = id;
descriptionObject.size = 12345;
item.name = main;
if (myValue.children[index] == undefined){
console.log('undefined detected');
}
myValue.children[index]= item;
//result = result + (myValue);
item.children = [descriptionObject];
sendJson(myValue);
callback(result);
}
} catch(ignored){
}
} return result;
}
希望你能帮助我。