전체 글 (39) 썸네일형 리스트형 화살표 함수 구문 화살표 함수에서 혼란스러운 중괄호 주로 react에서 map메소드를 사용할 때 자주 에러가 나는 부분이기 때문에 간단히 정리해보자 Statements와 Expressions 1. Expression (표현식) ◾️ 단일 값을 생성하는 코드 console.log(2 + 2 * 3 / 2); // 5 2. Statements (문장) ◾️ 작업을 수행하는 코드 ◾️ 반복문, 조건문 등 for(let i = 0; i { statements } (param1, param2, …, paramN) => expression // { return expression; } -> return과 중괄호.. 6.10 화살표 함수 다시 살펴보기 📢 화살표 함수는 단순히 함수를 짧게 쓰기 위한 용도로 사용되지 않는다. 독특하고 유용한 기능을 제공한다. ◾️ 멀리 떨어진 곳에서 실행될 작은 함수를 작성해야 하는 상황 ◾️ 예시 arr.forEach(func) - func는 forEach가 호출될 때 배열 arr의 요소 전체를 대상으로 실행된다. setTimeout(func) - func는 내장 스케줄러에 의해 실행된다. ◾️ 함수를 어딘가에 전달하게 되면 함수의 컨텍스트를 읽을 수 있다. ➡️ 화살표 함수를 사용하면 현재 컨텍스트를 잃지 않는다. 화살표 함수에는 'this'가 없다 ◾️ 화살표 함수 본문에서 this에 접근하면, 외부에서 값을 가져온다. let group = { title: '1모둠', students: [ '시목', '여진', '.. 6.10 함수 바인딩 📢 객체 메서드를 콜백으로 전달할 때 this 정보가 사라지는 문제가 생긴다. 사라진 'this' ◾️ 객체 메서드가 객체 내부가 아닌 다른 곳에 전달되어 호출되면 this가 사라진다. let user = { firstName: 'suzu', sayHi() { console.log(`Hello! ${this.firstName}!`); } }; setTimeout(user.sayHi, 1000); // Hello, undefined! ◾️ setTimeout에 객체에서 분리된 함수인 user.sayHi가 전달되기 때문에 undefined가 출력된다. let f = user.sayHi; setTimeout(f, 1000); // user context를 잃어버림 ◾️ 브라우저 환경에서 setTimeout메서.. 이전 1 2 3 4 5 6 ··· 13 다음 목록 더보기