forEach 2

Javascript 에서 forEach 함수는 비동기함수를 기다리지 않아요!

🚨 문제 상황 배열에 담긴 요소들을 하나씩 뽑아내는 작업을 할 때 아래와 같은 코드가 있다고 해보자. const allu = new Array(10).fill('dachshund'); const result = [] const asyncFunction = (i) => { return new Promise(resolve => { setTimeout(() => { result.push(i) resolve() }, 1000); }) } allu.forEach(async (_,i)=>{ await asyncFunction(i) }) console.log(result) 위 코드처럼 작성하면 result 값에 원하던 값이 들어가있지 않고 초기의 배열인 빈값이 출력됐다. forEach는 내부에 들어있는 순차적으로배열..

Javascript 기본 - 1) 자바스크립트 JS 기초

- console 객체는 아무 전역 객체에서나 접근할 수 있다. - time과 timeEnd의 매개변수에는 똑같은 문자열을 넣어줘야 한다. - 자바스크립트에서 변수를 선언할 때, var, let, const를 사용한다. 1. [변수 선언 방식] var : 중복 선언과 재할당이 가능하다. let(ES6) : 중복 선언은 불가하며, 재할당은 가능하다. const(ES6) : 중복 선언과 재할당 둘 다 불가능하다.(※ const로 선언했어도 배열과 객체의 값을 변경하는 것은 가능하다.) 2. [유효한 참조 범위] var : 함수 레벨 스코프(function-level-scope) 아래와 같이 함수 내에서 선언된 변수는 함수 내에서만 유효하다. 하지만, 함수 외부에서는 참조할 수 없다. let / const :..

반응형