我的问题是以下内容。我有两个数组,我想将一个元素从数组A移动到数组B.但是它并不那么容易。哪个元素将完全是随机的。我复制我的代码,所以我的目标会更容易理解:
var array1 = ["A","B","C"];
var array2 = [];
var move = function() {
var x = Math.floor((Math.random() * 100) + 1);
if (x > 0 && x < 33.1 && array1[0] !== "undefined")
{array2.push(array1[0])
delete array1[0]
}
if (x > 33.2 && x < 66.1 && array1[1] !== "undefined")
{array2.push(array1[1])
delete array1[1]
}
if (x > 66.2 && x < 100.1 && array1[2] !== "undefined")
{array2.push(array1[2])
delete array1[2]
}
else {
move();
return
}
}
move();
move();
move();
console.log(array1);
console.log(array2);
所以其目的是,函数调用的3倍,我们将在B阵列中的三个要素。如果随机数是“未定义的”,我希望我的函数自动重启。所以对于下一个随机卷,它会选择另一个元素。等等等等。 我的想法中的代码,但它不工作,因为它仍有下探“不确定”的。 谢谢,
ARRAY1 [2]!==“undefined”你比较的不是undefined,而是一个字符串的文本是'undefined';) 你想要的是array1 [2]!== undefined – grzesiekgs
你应该使用'typeof array1 [2]!= =“undefined”' – VDarricau
第二件事。我不知道你说的是什么意思: '如果随机数是“未定义”,我希望我的函数自动重启' Math.random将始终返回0和1之间的数字 – grzesiekgs