我想在NodeJS中創建X個隨機對象(本例中爲100個)。這些對象具有隨機值,我想讓它們在randomIntervals中創建。爲了做到這一點,我寫的代碼類同此:如何在Nodejs中以隨機時間間隔創建隨機對象?
i=0;
while (i < 100){
randomNum1 = Math.floor(Math.random()*100);
randomNum2 = Math.floor(Math.random()*100);
randomIntervalTime = Math.floor(Math.random()*100);
timeOutInterval = setTimeout(function(){
return new SomeObject(randomNum1, randomNum2)}, randomIntervalTime);
i++;
}
的問題是該值不會保留回調,它只會產生相同的所有值100個新對象(創建的最後一個值在迴路中)
我意識到這是因爲回調工作的方式存在一些問題,我不完全掌握,但我的問題是如何在Nodejs中完成此操作。
精確副本[setTimeout的在一個for循環並通過i設定爲值] (http://stackoverflow.com/questions/5226285/settimeout-in-a-for-loop-and-pass-i-as-value)等等。 – Bergi
爲什麼不在超時內創建隨機值?這就像你現在一起創建100個對象,然後隨機產生它們 – Bergi
這可能會工作Bergi,實際上隨機函數進入超時,但我試圖避免代碼混亂。 – user1500053