NodeJS에 X 개의 랜덤 오브젝트 (이 예제에서는 100 개)를 생성하려고합니다. 이 객체들은 난수 값을 가지고 있으며 randomInterval에서 생성되기를 원합니다. 이를 위해 나는이에 비슷한 코드를 작성 :노드 j에서 임의의 시간 간격으로 임의의 오브젝트를 어떻게 만듭니 까?
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에서 이것을 달성 할 수있을 것인가이다.
정확한 복제 [A에 대한 루프에서의 setTimeout 및 값 I를 통과] (http://stackoverflow.com/questions/5226285/settimeout-in-a-for-loop-and-pass-i-asvalue) 및 기타 여러 가지가 있습니다. – Bergi
타임 아웃 내에 랜덤 값을 생성하지 않으시겠습니까? 마치 100 개의 객체를 모두 만들고 나중에 무작위로 생성하는 것과 같습니다. – Bergi
사실 Bergi가 작동하여 타임 아웃에 무작위 기능을 넣을 수도 있지만 코드 혼란을 피하려고했습니다. – user1500053