我目前正在创建一款允许用户点击大量图片的游戏。根据他们点击的图像,会发生不同的事情。我看过以前的问题,他们似乎都在问“如何随机选择数组中的项目”。但是,我的略有不同。对不起,如果你觉得我的答案就在其他地方。但无论如何!
我的问题很简单:
如何随机选择阵列?到目前为止,我的代码包含一个函数,可以检查数组中是否存在整数。到目前为止,这是我的代码。
//The array below contains the integers.
example=new Array(1,2,3);
//The function below checks whether 'image' (which is an integer) is the same as any integers within the example array.
function isItThere(obj) {
var j = false;
for (var i = 0; i < example.length; i++) {
if (example[hits] == obj) {
j = true;
break;
}
}
return j;
}
//This is the IF statement I have used. After the integer associated with 'image' has been passed through the 'isItThere' function either A or B will happen. (A happens if the number exists).
if(isItThere(image)){
目前,这一切都完美无缺。虽然它可能不是最有效的方式,但它实现了我迄今想要的东西。
但我现在想拥有多个包含整数的数组。这是因为如果用户重新加载游戏,那么他们确切地知道要按哪些图像来赢得游戏。因此,我想创建几个数组,其中一个将在游戏开始时随机选择。
例如......
example0=new Array(1,2,3);
example1=new Array(4,5,6);
example2=new Array(7,8,9);
我相信我应该使用以下代码。
var num=Math.floor(Math.random()*3);
然后以某种方式将该数字与“示例”一词联系起来。
那样,这部分代码
if(isItThere(image)){
可以保持不变,因为isItThere处理随机数组的选择。
希望你能得到我想要的东西。我试图尽可能地描述性。再次总结一下,我希望能够在游戏开始时选择一个阵列,以便可以多次播放游戏。你能写出我需要的代码吗?我有一种感觉很简单。但是我花了几天时间看。
感谢您的帮助:)
答案 0 :(得分:2)
制作父数组然后引用这个父数组怎么样?
var childArray1 = [1,2,3],
childArray2 = [4,5,6],
childArray3 = [7,8,9],
parentArray = [childArray1, childArray2, childArray3];
你也可以用 parentArray.push(childArray1); 添加它们,哪一个更适合你。
答案 1 :(得分:0)
你应该做一个数组数组,并随机选择:
var myArray = [
[1, 2, 3],
[4, 5, 6],
[7, 8, 9],
];
var theArray = myArray[Math.random() * 3)];