728x90
반응형
함수 선언식
가장 기본적인 함수 선언 방식으로 함수명이 정의되어 있고, 별도의 할당 명령이 없는 특징을 가지고 있다
function add(a,b){
return a+b
}
함수 선언식은 함수 호이스팅이 발생한다 (함수 선언문 이전에 함수를 참조/실행 할 수 있다)
함수 표현식
정의한 함수를 별도의 변수에 할당하여 사용하는 방식
let cat = function minus(x,y){
return x-y
}
함수 명 없이도 함수 표현식을 만들 수 있다
let cat = function (x,y){
return x-y
}
이런 함수표현식을 익명함수라고 한다
- 익명함수란 함수를 재사용하지 않을 목적으로 함수에 이름을 붙이지 않는 것을 뜻한다.
화살표 함수
화살표 함수는 함수 표현식의 단축형이라고 할 수 있다
위 함수 표현식을 화살표 함수로 표현하면 이렇게 나타낼 수 있다
let cat = (x,y) => x - y
let cat = (x,y) => {return x-y}
//두 줄은 같은 화살표 함수지만 return과 중괄호는 함께 생략이 가능하다
함수를 리턴하는 함수인 클로저 함수도 화살표 함수 형식으로 작성할 수 있다
//화살표 함수
const adder = x => y => x + y
//함수 표현식
const adder = function(x){
return function (y){
return x + y;
}
}
//위 두 함수는 같은 결과값이 나오는 함수이다.
728x90
반응형
'junior developer :) > JS_JavaScript' 카테고리의 다른 글
객체지향 프로그래밍 1. 클래스와 인스턴스 (0) | 2022.09.21 |
---|---|
css Link를 <head>에 선언하고 js script를 <body>에 선언하는 이유(JS) (0) | 2022.09.20 |
DOM 이란? / Tree 자료구조 (JS) (0) | 2022.09.13 |
깊은 복사_Deep Copy vs 얕은 복사_Shallow Copy (JS) (0) | 2022.09.09 |
원시 자료형_Primitive data type vs 참조 자료형_Reference type(JS) (0) | 2022.09.06 |