JavaScript,创建一个Array,其中包含从1到10的随机10个数字,Array长度为9个元素。找出剩下的数字是多少?
JavaScript, create an Array with random 10 numbers from 1 to 10, Array length 9 elements. Find the number what leftover?
我在这里 到处 搜索但找不到答案...只有部分内容..
我有一个面试问题...
你有一个数组,它是 array.length=9。你有 10 个数字,从 1 到 10。将这些数字随机 放入数组。如何 find/return 数什么 leftover 而没有得到数组。
任何解决方案?
试试下面的代码:
var numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
var chosen = [];
for(var i = 0; i < 9; i ++){
var index = Math.floor((Math.random() * numbers.length) + 1)-1;
chosen.push(numbers[index]);
numbers.splice(index, 1);
}
document.write(JSON.stringify(chosen)+"<br>");
document.write(numbers);
使用array.indexOf()
方法你可以做到。
首先创建随机数组 arr
然后这样做:
for(var i=1;i<=10;i++){
if(arr.indexOf(i)==-1){
console.log(i+'is not in the array');
return i;
}
}
我在这里 到处 搜索但找不到答案...只有部分内容.. 我有一个面试问题... 你有一个数组,它是 array.length=9。你有 10 个数字,从 1 到 10。将这些数字随机 放入数组。如何 find/return 数什么 leftover 而没有得到数组。 任何解决方案?
试试下面的代码:
var numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
var chosen = [];
for(var i = 0; i < 9; i ++){
var index = Math.floor((Math.random() * numbers.length) + 1)-1;
chosen.push(numbers[index]);
numbers.splice(index, 1);
}
document.write(JSON.stringify(chosen)+"<br>");
document.write(numbers);
使用array.indexOf()
方法你可以做到。
首先创建随机数组 arr
然后这样做:
for(var i=1;i<=10;i++){
if(arr.indexOf(i)==-1){
console.log(i+'is not in the array');
return i;
}
}