Javascript 如何一次创建多个对象并将其推入阵列中

Javascript 如何一次创建多个对象并将其推入阵列中,javascript,Javascript,我想要这样的东西: [{ age: 3, area: 5 }, { age: 4, area: 15 }, { age: 19, area: 3 }, { age: 16, area: 11 }, { age: 20, area: 4 }, { age: 6, area: 9 }] 方法是每次创建新对象并将其推送到数组中 function Numstuff(age,area) { this.age = age, this.

我想要这样的东西:

  [{ age: 3, area: 5 }, 
   { age: 4, area: 15 }, 
   { age: 19, area: 3 }, 
   { age: 16, area: 11 }, 
   { age: 20, area: 4 }, 
   { age: 6, area: 9 }]
方法是每次创建新对象并将其推送到数组中

  function Numstuff(age,area) {
      this.age = age,
      this.area = area
  }

  var numObjArray = []

var createObj = new Numstuff (Math.floor(Math.random() * 20), 
Math.floor(Math.random() * 20))



numObjArray.push(createObj)
但这只推了一个。如何创建多个对象并将其推入阵列?

如何:
var数组=[];
var obj={};
对于(var i=0;i这个呢:
var数组=[];
var obj={};

对于(var i=0;i,您可以通过传递一个函数直接用对象创建一个数组,并用对象填充该数组:

功能Numstuff(年龄、面积){
这个年龄,
这个面积
}
//做10个Numstuff
常数num=10
设arr=Array.from({length:num},()=>newnumstuff(Math.floor(Math.random()*20),Math.floor(Math.random()*20)))

console.log(arr)
您可以直接使用对象创建数组,并通过传递函数将其填充:

功能Numstuff(年龄、面积){
这个年龄,
这个面积
}
//做10个Numstuff
常数num=10
设arr=Array.from({length:num},()=>newnumstuff(Math.floor(Math.random()*20),Math.floor(Math.random()*20)))

console.log(arr)
可能带有for循环。使用您自己的代码:

for (var i = 0; i < 9; i++) {
    var createObj = new Numstuff (Math.floor(Math.random() * 20), 
    Math.floor(Math.random() * 20))
    numObjArray.push(createObj)
}
for(变量i=0;i<9;i++){
var createObj=newnumstuff(Math.floor(Math.random()*20),
Math.floor(Math.random()*20))
numObjArray.push(createObj)
}

可能带有for循环。使用您自己的代码:

for (var i = 0; i < 9; i++) {
    var createObj = new Numstuff (Math.floor(Math.random() * 20), 
    Math.floor(Math.random() * 20))
    numObjArray.push(createObj)
}
for(变量i=0;i<9;i++){
var createObj=newnumstuff(Math.floor(Math.random()*20),
Math.floor(Math.random()*20))
numObjArray.push(createObj)
}

如果您确定如果不希望将新对象添加到数组中,就永远不会使用
NumStuff
构造函数,则可以将
numbojarray.push(此)
在构造函数的末尾。或者,如果所有值都以相同的方式生成,则只需使用循环。如果您确定在不希望将新对象添加到数组中的情况下永远不会使用
NumStuff
构造函数,则可以将
numbojarray.push(此)
在构造函数的末尾。或者,如果所有值都以相同的方式生成,只需使用一个循环。为什么要创建所有额外的空对象?@MarkMeyer你说的是
obj
?是的,
让obj={age:i,area:Math.random()}
在循环中就足够了。你不需要另一个
obj={}
你为什么要创建所有多余的空对象?@MarkMeyer你说的是
obj
?是的,
让obj={age:i,area:Math.random()}
在循环中就足够了。你不需要另一个
obj={}