Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- allow_anonymouse
- listener 1883
- html #select #option #multiple
- mosquitto
- pm2 확인
- Replication
- 데이터테이블 데이터 넣기
- setInterval 외부 정지
- timepicker
- mySQL_Replication
- mosquitto.conf
- 1883
- pm2
- 공인IP
- pm2 설치
- 맥 어드레스
- setInterval 정지
- DataGridView 직접 입력
- datagridview 직접입력
- invalid data
- setInterval 중지
- DatePicker
- map이 undefined가 뜰 때
- setInterval clear
- c# datagridview 데이터 넣기
- 서버동기화
- transfer
- pm2 상태 확인
- pm2 시작
- AntDesign
Archives
- Today
- Total
개발 노트
JS forEach 와 async 본문
JS에서 forEach 메서드는 배열 요소를 순회하며 함수를 실행하는데, 기본적으로 비동기 처리에 적합하지 않다.
forEach 메서드는 반복 중인 함수가 완료될 때 까지 기다리지 않고 다음 요소로 이동하하므로
순서대로 실행되지 않을 수 있다.
비동기 작업을 순서대로 수행하려면 for...of 루프나 for 루프 를 사용하면 된다
다음은 for of 를 사용한 비동기 작업의 예시이다.
const items = [1, 2, 3, 4, 5];
// 1초씩 대기하여 콘솔에 item을 찍어보는 함수
async function processItem(item) {
return new Promise((resolve) => {
setTimeout(() => {
console.log(item);
resolve();
}, 1000);
});
}
// for of 함수
async function processItemsSequentially() {
for (const item of items) {
await processItem(item);
}
}
processItemsSequentially();
정상적으로 await 이 동작함을 확인 할 수 있다
'JavaScript' 카테고리의 다른 글
next.js build error (winston module) (0) | 2024.07.17 |
---|---|
JS readFile 예외 처리 (0) | 2023.11.10 |
JS Set사용법 (0) | 2023.11.10 |
JS Map 사용법 (0) | 2023.11.09 |
랜덤 정수 생성하기 (0) | 2023.11.08 |