JavaScript,创建一个包含1到10个随机10个数字的数组,数组长度为9个元素。找到什么剩余的数字?

时间:2015-04-23 19:59:03

标签: javascript arrays random numbers

我在这里搜索无处不在,但找不到答案......只有部分内容...... 我有一个面试问题...... 你有一个数组,它是 array.length = 9 。您有 10个数字,从1到10.将这些数字随机添加到数组中。如何查找/返回 剩余的数字,而不是数组。 有解决方案吗

2 个答案:

答案 0 :(得分:0)

请尝试以下代码:



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);
&#13;
&#13;
&#13;

答案 1 :(得分:0)

使用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;
        }
    }