如何在JavaScript中将对象属性添加到数组中?

詹姆士

这是一个小提琴。http://fiddle.jshell.net/GF9nj/1/我要弄清楚的是为什么当我将对象数据推入randomAnswerArray时,即使在测试<p>中也没有显示。它大约在JavaScript部分的中间。

这是有问题的代码:

// incorrectAnswer1, incorrectAnswer2, incorrectAnswer3 are initialised elsewhere ...
randomAnswerArray = []; //resets the array to empty
randomAnswerArray.push(randomQuestion.correctAnswer);
document.getElementById('test3').innerHTML=randomAnswerArray[0]; //TESTING doesn't work
randomAnswerArray.push(randomQuestion.incorrectAnswer1);
randomAnswerArray.push(randomQuestion.incorrectanswer2);
randomAnswerArray.push(randomQuestion.incorrectanswer3);
document.getElementById('test1').innerHTML = randomAnswerArray.valueOf();

valueOf()调用仅显示randomAnswerArray中的0和1项,但我也同时推2和3。


这是小提琴的完整代码:

的HTML

<p id='questionString'></p>
<p id='test1'></p>
<p id='test2'></p>
<p id='test3'></p>
<button onclick='generate()'>Click me to start!</button>

的JavaScript

var questionList = [];
var randomAnswerArray = [];

// this is the question object constructor

function quizQuestion(question, correctAnswer, incorrectAnswer1, incorrectAnswer2, incorrectAnswer3) {
    this.question = question;
    this.correctAnswer = correctAnswer;
    this.incorrectAnswer1 = incorrectAnswer1;
    this.incorrectAnswer2 = incorrectAnswer2;
    this.incorrectAnswer3 = incorrectAnswer3;
}

// this constructs a question

var hairColor = new quizQuestion("What color is my hair?", "black", "blue", "red", "purple");

// this adds the question to the questionList

questionList.push(hairColor);
document.getElementById('test2').innerHTML = questionList[0].correctAnswer; //TESTING object constructor works
function generate() {

    // this part picks a random question
    var randomQuestion = questionList[Math.floor(Math.random() * questionList.length)];

    // this part puts the question in the questionString
    document.getElementById("questionString").innerHTML = randomQuestion.question;

    // this part puts the answers in the array

    // THIS IS WHAT WE ARE TESTING    VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
    randomAnswerArray = []; //resets the array to empty
    randomAnswerArray.push(randomQuestion.correctAnswer);
    document.getElementById('test3').innerHTML=randomAnswerArray[0]; //TESTING doesn't work
    randomAnswerArray.push(randomQuestion.incorrectAnswer1);
    randomAnswerArray.push(randomQuestion.incorrectanswer2);
    randomAnswerArray.push(randomQuestion.incorrectanswer3);
    document.getElementById('test1').innerHTML = randomAnswerArray.valueOf(); //TESTING doesn't work
    // ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^    
    // this part randomizes the array

    var currentIndex = randomAnswerArray.length;
    var temporaryValue;
    var randomIndex;
    while (0 !== currentIndex) {
        randomIndex = Math.floor(Math.random() * currentIndex);
        currentIndex -= 1;
        temporaryValue = randomAnswerArray[currentIndex];
        randomAnswerArray[currentIndex] = randomAnswerArray[randomIndex];
        randomAnswerArray[randomIndex] = temporaryValue;
    }
}
djna

在您的推式语句中,您拼错了这些

 incorrectAnswer2
 incorrectAnswer3

作为

incorrectanswer2
incorrectanswer3

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在Javascript中将对象添加到对象?

来自分类Dev

如何在JavaScript中将对象添加到对象

来自分类Dev

如何在javascript中将数组添加到数组中?

来自分类Dev

在TypeScript中将对象添加到函数中的数组

来自分类Dev

如何在Java中将对象添加到ArrayList

来自分类Dev

如何在javascript中将对象添加到内置对象?

来自分类Dev

如何在AMP-HTML中将对象添加到放大器状态数组?

来自分类Dev

如何在另一个类Java中将对象添加到数组

来自分类Dev

如何在javascript中将字符串中的属性添加到对象?

来自分类Dev

如何在JavaScript中将值添加到数组中的对象?

来自分类Dev

如何在Django中将对象从模型添加到CBV中?

来自分类Dev

如何在Java中将对象添加到集合中?

来自分类Dev

如何将对象添加到数组javascript

来自分类Dev

如何在JavaScript中将对象附加到数组?

来自分类Dev

在mongoose中的子文档mongodb中将对象添加到数组中。找不到属性“消息”

来自分类Dev

如何在Coldfusion中将数组添加到XML对象?

来自分类Dev

在javascript中将对象添加到另一个对象数组

来自分类Dev

将对象添加到数组中并更改该数组中其他对象的属性

来自分类Dev

在angularjs的for循环中将对象添加到数组

来自分类Dev

如何将对象属性添加到对象的属性?

来自分类Dev

如何在Node JS中将属性添加到对象中

来自分类Dev

如何在JavaScript中将项目添加到空数组

来自分类Dev

将属性添加到JavaScript中的对象数组

来自分类Dev

如何在JavaScript中将div动画添加到div数组中的div中?

来自分类Dev

将对象添加到预分配的对象数组中

来自分类Dev

将对象添加到预分配的对象数组中

来自分类Dev

使用useReducer将对象添加到数组中的数组

来自分类Dev

使用redux将对象添加到数组中的数组

来自分类Dev

将对象数组分组并添加到复杂对象中:Javascript

Related 相关文章

  1. 1

    如何在Javascript中将对象添加到对象?

  2. 2

    如何在JavaScript中将对象添加到对象

  3. 3

    如何在javascript中将数组添加到数组中?

  4. 4

    在TypeScript中将对象添加到函数中的数组

  5. 5

    如何在Java中将对象添加到ArrayList

  6. 6

    如何在javascript中将对象添加到内置对象?

  7. 7

    如何在AMP-HTML中将对象添加到放大器状态数组?

  8. 8

    如何在另一个类Java中将对象添加到数组

  9. 9

    如何在javascript中将字符串中的属性添加到对象?

  10. 10

    如何在JavaScript中将值添加到数组中的对象?

  11. 11

    如何在Django中将对象从模型添加到CBV中?

  12. 12

    如何在Java中将对象添加到集合中?

  13. 13

    如何将对象添加到数组javascript

  14. 14

    如何在JavaScript中将对象附加到数组?

  15. 15

    在mongoose中的子文档mongodb中将对象添加到数组中。找不到属性“消息”

  16. 16

    如何在Coldfusion中将数组添加到XML对象?

  17. 17

    在javascript中将对象添加到另一个对象数组

  18. 18

    将对象添加到数组中并更改该数组中其他对象的属性

  19. 19

    在angularjs的for循环中将对象添加到数组

  20. 20

    如何将对象属性添加到对象的属性?

  21. 21

    如何在Node JS中将属性添加到对象中

  22. 22

    如何在JavaScript中将项目添加到空数组

  23. 23

    将属性添加到JavaScript中的对象数组

  24. 24

    如何在JavaScript中将div动画添加到div数组中的div中?

  25. 25

    将对象添加到预分配的对象数组中

  26. 26

    将对象添加到预分配的对象数组中

  27. 27

    使用useReducer将对象添加到数组中的数组

  28. 28

    使用redux将对象添加到数组中的数组

  29. 29

    将对象数组分组并添加到复杂对象中:Javascript

热门标签

归档