Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/76.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何将数组中的对象迭代为多个元素?_Javascript_Jquery_Arrays - Fatal编程技术网

Javascript 如何将数组中的对象迭代为多个元素?

Javascript 如何将数组中的对象迭代为多个元素?,javascript,jquery,arrays,Javascript,Jquery,Arrays,答案可能很简单,但我就是看不出来 我有一个对象数组,我想在不同的地方显示它们的信息。我想把每个问题放到h1部分,我有五个问题。然而,我提出的代码只是将数组中最后一个对象的问题插入到每个部分h1中,也就是说,它们都说“问题5”。我不明白为什么。如何将每个问题打印到不同的部分 var questions = [ {question: "Question1", choices: ["A","B","C"], answer: 0}, //etc. x 5 ]; $('section h1'

答案可能很简单,但我就是看不出来

我有一个对象数组,我想在不同的地方显示它们的信息。我想把每个问题放到h1部分,我有五个问题。然而,我提出的代码只是将数组中最后一个对象的问题插入到每个部分h1中,也就是说,它们都说“问题5”。我不明白为什么。如何将每个问题打印到不同的部分

var questions = [
   {question: "Question1", choices: ["A","B","C"], answer: 0},
   //etc. x 5
];

$('section h1').each(function() {
    for (var i = 0; i < questions.length; i++) { 
        $(this).text(questions[i].question);
    }
});
var问题=[
{问题:“问题1”,选项:[“A”、“B”、“C”],答案:0},
//等x 5
];
$('section h1')。每个(函数(){
对于(var i=0;i
调用
.each()
回调函数会传递一个
索引作为第一个参数。您可以使用它来确定显示哪个问题,而不必在所有问题上循环

因此,请将代码更改为:

var questions = [
   {question: "Question1", choices: ["A","B","C"], answer: 0},
   //etc. x 5
];

$('section h1').each(function(index) {
    $(this).text(questions[index].question);
});
编辑:添加有关如何填充选项的其他示例

您需要在每个部分上循环,然后在该部分中找到
h1
li
来填充

像这样:

var questions = [
   {question: "Question1", choices: ["A","B","C"], answer: 0},
   //etc. x 5
];

$('section').each(function(index) {
    var question = questions[index], $section = $(this);
    $section.find('h1').text(question.question);
    $section.find('li').text(function (index) {
        return question.choices[index];
    });
});

OP需要一个基于数组[questions]长度的索引,而不是h1数组列表。@ProllyGeek:这没有意义。我相信OP想要的正是格雷格尔给他们的。将第一个问题放在第一个h1中,第二个问题放在第二个h1中,依此类推…@MattBurland是的,我现在发现它是有意义的,尽管这个问题问得不恰当。@key如果它对你有用,不要忘了接受它(单击答案旁边的勾选框)。欢迎来到StackOverflow@格雷格尔会的。我可以问一下,你会如何将问题。选择重复到每个部分的不同li中?相同的模式,但文本(问题[index].选项[index])不起作用。