我收到了这段代码:
var counter = 0,
randoms = [],
randoms1 = [],
n;
for (n = 0; n < 5; n++) {
randoms.push(Math.floor(Math.random() * 49 + 1));
randoms1.push(Math.floor(Math.random() * 49 + 1));
}
使用这两个数组,我如何检查它们中是否有一个公共数字,这个数字是否将它添加到一个新数组?
答案 0 :(得分:2)
遍历其中一个阵列并检查:
var matches = [];
for (var i = 0; i < randoms.length; i++) {
if (randoms1.indexOf(randoms[i]) > -1) matches.push(randoms[i]);
}
答案 1 :(得分:0)
- &GT;简单而繁重的检查:双for
循环。
- &GT;更硬但更聪明,更轻松:使用(indexOf(smthg) > -1)
- &GT;我最喜欢的:
randoms = [];
//Populating
for (var n = 0; n < 5; n++) {
randoms[Math.floor(Math.random() * 49 + 1)] = (Math.floor(Math.random() * 49 + 1));
}
//Checking
for (var n in randoms) {
if (randoms[randoms[n]]) console.log("Found One !");
}