简体   繁体   English

在JavaScript中将多个值添加到数组或对象

[英]adding multiple values to an array or object in javascript

i like to have array or object like: 我喜欢像这样的数组或对象:

[0]
   text:"first"
   id: 1
[1]
   text:"second"
   id: 2
[2]
   text:"third"
   id: 3

getting myself: 让自己:

1: first
2: 1
3: second
4: 2
5: third
6: 3

here is my javascript with implementation for the array at the moment: 这是我目前针对数组的 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);
                    }
}

please help to get a structured array or object 请帮助获取结构化数组或对象

将包含您的数据的对象推入数组:

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

Assuming that you want to store all answers into a single array, you could use concat to get the expected result and reduce the amount of code at the same time : 假设您要将所有答案存储在一个数组中,则可以使用concat获得预期结果并同时减少代码量:

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

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

Here is how concat works ( mdn doc ) : 这是concat工作方式( mdn doc ):

var a = [1, 2, 3],
    b = [4, 5, 6];
a.concat(b); // [1, 2, 3, 4, 5, 6]

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM