자바스크립트에서의 함수란? #94
Unanswered
hwangstar156
asked this question in
JavaScript
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
함수란
함수는 JavaScript에서 기본적인 구성 블록 중의 하나입니다. 함수는 작업을 수행하거나 값을 계산하는 문장 집합 같은 자바스크립트 절차입니다. 함수를 우선 지시사항들의 묶음(과정)으로 이해하면 된다. 자바스크립트에서 함수는 따로 함수라는 자료구조가 아니라 객체로 구현되어있습니다.
함수는 정의와 호출단계로 나눌수있습니다.
함수를 정의할때는 함수 표현식, 함수 선언식 이렇게 2개로 나눌수있습니다.
함수 표현식
함수 선언식
함수 호이스팅의 경우 함수의 정의보다 먼저 호출하여도 문제없이 호출할수 있습니다. 그래서 일반적으로는 함수표현식을 이용해서 사용하는것을 추천합니다.
화살표 함수
화살표함수란?
함슈 표현식과 비교했을때 짧은 문법을 지닌다.
메서드나 생성자함수로 사용불가
메서드 vs 함수
과거에 메서드란 객체에 바인딩된 함수를 의미했습니다.
현재 es6기준으로는 메서드 축약 표현으로 정의된 함수
함수의 정의와 호출로 결정되는것
정의 - 스코프
호출 - this
함수와 일급객체
자바스크립트 함수는 일급객체입니다. 여기서 일급객체란 함수를 값처럼 이용할수 있는것입니다.
일급객체가 되려면 다음과 같은 조건을 모두 만족해야합니다.
자바스크립트의 함수는 이를 모두 만족하므로 일급객체입니다.
자바스크립트 함수는 일급객체이기때문에 다음과 같은것이 가능합니다.
콜백함수
콜백함수란 어떤 함수의 인자로 들어가는 함수이다. 다른 함수가 실행을 하다가 콜백을 만나면 실행을 끝낸뒤 콜백함수를 실행한다.
콜백함수는 언제 사용할까요??
자바스크립트에서 비동기 프로그래밍을 할때 진행하거나 특정 이벤트가 발생했을때 실행하고 싶은 함수를 콜백함수에 넣어서 이용합니다.
콜백함수를 통해서 어떻게 비동기 프로그래밍을 진행하나요??
콜백함수를 일반함수에 넣어서는 비동기적으로 호출할수가 없다. 비동기적으로 콜백함수를 호출하는 함수(setTimeout)과 비동기적으로 호출되기원하는 콜백함수가 만나면 콜백함수를 이용한 비동기 프로그래밍이 가능하다.
Beta Was this translation helpful? Give feedback.
All reactions