在javascript中向数组或对象添加多个值

在javascript中向数组或对象添加多个值,javascript,arrays,object,structure,Javascript,Arrays,Object,Structure,我喜欢数组或对象,如: [0] text:"first" id: 1 [1] text:"second" id: 2 [2] text:"third" id: 3 让我自己: 1: first 2: 1 3: second 4: 2 5: third 6: 3 下面是我的javascript以及目前阵列的实现: var numberOfQuestions = questionaireResult.numberOfQuestions;

我喜欢数组或对象,如:

[0]
   text:"first"
   id: 1
[1]
   text:"second"
   id: 2
[2]
   text:"third"
   id: 3
让我自己:

1: first
2: 1
3: second
4: 2
5: third
6: 3
下面是我的javascript以及目前阵列的实现:

 var numberOfQuestions = questionaireResult.numberOfQuestions;
                var i;
                var j;
                var result = [];

                for (i = 0; i < numberOfQuestions; i++) {
                    debugger;
                    var question = questionaireResult.questions[i].text;
                    var questionID = questionaireResult.questions[i].id;


                    for (j = 0; j < questionaireResult.questions[i].answers.length; j++) {

                        var text = questionaireResult.questions[i].answers[j].text;
                        var id = questionaireResult.questions[i].answers[j].id;
                        result.push(text, id);
                    }
}

请帮助获取结构化数组或对象

将包含数据的对象推送到数组:

result.push({text: text, id: id});

将包含数据的对象推送到阵列:

result.push({text: text, id: id});

假设要将所有答案存储到单个数组中,可以使用concat获得预期结果,同时减少代码量:

var questions = questionaireResult.questions,
    result = [],
    l = questions.length,
    i = 0;

for (; i < l; i++) {
    result = result.concat(
        questions[i].answers
    );
}

假设要将所有答案存储到单个数组中,可以使用concat获得预期结果,同时减少代码量:

var questions = questionaireResult.questions,
    result = [],
    l = questions.length,
    i = 0;

for (; i < l; i++) {
    result = result.concat(
        questions[i].answers
    );
}

@RagimsRagimovs:在下一版本的JavaScript ECMAScript 6中,它将更加简洁:result.push{text,id};其功能与上述相同;基本上,它只是根据变量的名称计算出属性的名称。但我们还没有ES6-@RagimsRagimovs:在下一版本的JavaScript ECMAScript 6中,它将更加简洁:result.push{text,id};其功能与上述相同;基本上,它只是根据变量的名称计算出属性的名称。但我们还没有ES6-