#javascript #jquery
#javascript #jquery
Вопрос:
У меня есть существующий пустой массив parentChildQuestions=[]
. Я хотел бы добавить к нему, чтобы построить следующую структуру:
[
{
"id": "001",
"childQuestions": [
"002",
"003"
]
}
]
У меня есть следующая функция, но childQuestions
свойство, похоже, не добавляется. В моем журнале это вообще не отображается.
function addToDependentQuestions (thisQuestion) {
if (parentChildQuestions.length===0) {
var thisParent = parentChildQuestions.push({"id":thisQuestion.Parent_Question__c});
thisParent.childQuestions=[thisQuestion.Id];
console.log(thisParent.childQuestions);
}
else {
var foundParentQuestion = $.grep(parentChildQuestions, function(e) {
return parentChildQuestions.Id == thisQuestion.Id;
});
foundParentQuestion.childQuestions.push(thisQuestion.Id);
}
console.log('parentChildQuestions' JSON.stringify(parentChildQuestions));
}
Ответ №1:
var thisParent = parentChildQuestions.push({"id":thisQuestion.Parent_Question__c});
‘array.push’ не возвращает вновь добавленный элемент. Оно возвращает новую длину массива.
Комментарии:
1. На самом деле в моем исходном коде было несколько ошибок, но именно эта вызвала описанную проблему