我正在创建一个琐事游戏,它会给用户4个答案。是使用数组来包含问题和答案这个游戏的一个很好的选择?如果是的话,什么是创建嵌套数组的正确方法。创建一个嵌套的数组?
-1
A
回答
0
因此......在js中,制作一个嵌套数组并不是问题,但如果您正在考虑key =>值类型的数组,那么这是一个问题,在这种情况下,您需要使用一个对象,如果您需要的话,可以像使用数组那样对其进行foreach属性。你可以存储回答值阵列(我去过那里正是你想这样做的琐事学习游戏一样的东西),但你可以随时使用对象和做这样的事情
var userAnswer = 'something',
item = {
question: 'what is a?'
answers: [ 'a', 'b', 'c' ]
validAnswer: 0;
}
if(userAnswer === item.answers[validAnswer]) {
console.log("is valid");
}
一些其他的用法:
var userStats = {
status: 'alive',
makeDead: function() {
this.status = 'dead';
},
bringBackToLife: function() {
this.status = 'alive';
},
}
//then you can even do things like...
userStats.makeDead();
console.log(userStats); //user will be dead
userStats.bringBackToLife(); //user status will be alive
我的意思是你应该罚款与阵列保持公正问题或问题和答案的(嵌套的[[]])阵列,但随后你开始玩阵列的比赛[0](应该是问题对吧?)数组[3](应该是无效答案?)然后呢?如果你仍然认为你的琐事游戏永远不会增长,那么你可能会坚持这个解决方案,但如果你认为它可能会演变只是使用对象来保持组织的东西。
更新 尽量保持你的对象小&不要让“上帝”的对象(查找SOLID规则),但如果你想假设保存/有一个包含一些问题,然后一个教训,你可以有一个大含有大量的小的物体,即
//you can make object to store some data and functions
var LessonItem = function(question){
this.question = question;
this.answers = [];
this.addAnswer = function(answer){
this.answers.push(answer);
};
};
//you dont need the 'valid' part if there's always just one valid option
var question1 = new LessonItem('What is?');
question1.addAnswer({text: 'It is something', valid: true });
question1.addAnswer({text: 'It is something not', valid: false });
question1.addAnswer({text: 'It is something 3', valid: true });
//and this would be our 'big' object, i.e. to save in json file or whatever
var lesson = {
lesson_subject: 'something',
lesson_repeat: 3,
lesson_score: 124,
lesson_items: [
question1,
//question2
]
};
console.log(lesson);
但是,是的,你可以有很大的“对象”到“商店”别人,但要避免创造神一样的一个庞大的管理对象的一切事业将成为地狱时间:D以及即时通讯不知道如果你这样做,但你可以粘贴在你的JavaScript在谷歌铬工具控制台和检查它是否正常工作,无需重新加载页面...(用于快速检查:))
相关问题
- 1. Javascript数组,为每个增量创建一个嵌套数组
- 2. 创建一个函数来组合一个没有递归的嵌套数组
- 3. 创建一个从未知数值数组一个PHP嵌套数组
- 4. PHP - 使用while循环来创建一个嵌套的数组
- 5. 我如何创建一个部分嵌套的数组?
- 6. 如何创建一个嵌套的数组出PHP
- 7. 创建数组嵌套的PHP
- 8. 创建一个适用于简单数组和嵌套数组的PHP函数
- 9. 如何从一个数据框创建一个嵌套的对象数组
- 10. PEGJs,语法到创建嵌套数组
- 11. 嵌套数组持平PARENT_ID创建
- 12. 嵌套数组/对象创建html?
- 13. 在javascript中创建嵌套数组
- 14. 创建和管理嵌套数组
- 15. 使用嵌套数组创建字典
- 16. 如何创建嵌套数组
- 17. 创建一个嵌套的JSON对象
- 18. 创建一个嵌套的树状
- 19. 创建一个嵌套的Javascript对象
- 20. 创建一个嵌套的JSON对象
- 21. 建立一个嵌套的数组从平面一个 - 解释
- 22. 从平面数组中使用儿童创建一个嵌套数组
- 23. 创建一个嵌套的哈希来组织对象
- 24. 创建一个嵌套循环
- 25. 创建一个嵌套片段
- 26. 用Word.Interop创建一个嵌套字段
- 27. 创建一个嵌套列表
- 28. 使用两个mySQL查询来创建嵌套的JSON数组
- 29. 添加一个嵌套的文件嵌套文档的数组
- 30. 创建一个仿函数的调用类或嵌套函数
“好”和“正确”都是意见问题。我会用一组对象来解决所有问题:'questions = [{question:“哪个是水果?”,答案:2,选项:[“rock”,“paper”,“菠萝”,“剪刀“]},{question:”哪一种颜色?“,答案:1,选项:[”ennui“,”green“,”umami“,”cold“]}]'。 – nnnnnn
哦,好吧,我正在考虑使用它,所以我会尝试一下。谢谢。 – skyeyl