I would like to send an object with JSON, I iterate this object with a for loop. My JSON sent is correct but the problem is there is null values in the array. I thinks it's linked with the myValue.children[index]= item;
I tried .filter() method but it didn't resolve my problem because array returned is empty. I also tried a condition but I just have 4 values detected.
This is the JSON I receive :
{
"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
}
]
}
]
}
This is my code :
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;
}
Hope you will can help me.
You can use underscore
module and use its compact
method.