콜백 함수를 사용하는 노드의 거의 모든 위치는 콜백 함수 뒤의 코드, 특히 데이터베이스 작업보다 먼저 실행될 가능성이 높습니다. 물론 노드는 파일 작업과 같은 동기 버전의 함수도 제공합니다. fs.readFileSync()는 fs.readFile()의 동기 버전입니다.
그럼 질문은 forEach()가 비동기적인가요?입니다. 논리적으로 말하면 Sync가 추가되지 않으면 비동기식이어야 합니다.
위 코드를 실행하면 아무런 출력도 없이 멈춥니다. .
그래서 노드의 forEach()는 동기식입니다! !
처음 노드를 사용할 때는 이 문제에 대해 생각하지 못했습니다. 테스트를 하다가 갑자기 오류가 발생하여 다음과 같은 문제가 발생했습니다. 이전 코드가 잘못 작성되었습니다.
어떤 경우에는 forEach를 비동기식으로 처리해야 한다면 구글에서 검색해서 node-array가 있으면 시도해보시면 됩니다~~ 포털: https://github.com/cfsghost /노드 배열
이 작품은 http://www.cnblogs.com/ImYZF에서 제작되었습니다