시간이 걸리는 함수에 각 항목을 전달하고 싶습니다. 하지만 JS 함수가 비동기식 인 것으로 보입니다. 함수를 순차적으로 호출하려면 어떻게해야합니까? (이전에 완료 한 후 다음 항목을 기능에 전달하십시오.)for 루프에서 JavaScript 함수를 순차적으로 호출하는 방법은 무엇입니까?
function main() {
for (var i = 0; i < n ; i++) {
doSomething(myArray[i]);
}
}
function doSomething(item) {
// do something take time
}
제 해결책은 함수를 재귀 적으로 호출합니다. 하지만이 문제를 해결할 다른 방법이 있는지 알고 싶습니다. 감사. 이전 완료 후 작동하려면 다음 항목을 전달하려면
function main() {
doSomething(myArray, 0);
}
function doSomething(item, i) {
// do something take time
doSomething(myArray, i + 1);
}
지금까지 내가 아는 한 for-cycles와 javascript에서의 함수 호출은 동기식이므로 함수가 비동기가되도록해야합니다. 어쩌면 그것은 함수 자체 내부에있을 수 있습니다. –
죄송합니다. 언급하지 않으려면 코드가 node.js 서버에서 실행되고 있습니다. 그렇기 때문에 기능이 비동기입니까? – Aaron
'myArray.forEach (doSomething)'이 떠오른다. – Malk