首页 > 解决方案 > 使用 for 循环从一个数组中获取随机对象并将它们添加到另一个数组

问题描述

我试图从一个数组(库存)中获取随机对象一定次数并将它们推送到一个新数组(randomInventory)中。下面的代码不起作用。有什么帮助吗?

    var inventory = activity.options;
    var randomInventory = new Array();   
    var i;
    var item;
      for(i=0; i>10; i++){
        item = inventory[Math.floor(Math.random()*inventory.length)];
       randomInventory.push(item);
      } 
alert(randomInventory);

标签: javascriptarraysloops

解决方案


很接近。您需要更改i>10i<10. 除此之外,这取决于你的函数的其余部分是什么样的,但它应该很好。下面的工作:

const go = () => {
   var inventory = [1,2,3,4,5];
   var randomInventory = new Array()  
   for(var i=0; i<10; i++){ // change to i<10
     var item = inventory[Math.floor(Math.random()*inventory.length)];
       randomInventory.push(item);
    } 
  return randomInventory
}

console.log(go())

推荐阅读