익명 함수
-
[20221112] 자바스크립트 함수에 대한 고찰 (feat. 항해99 프리온보딩 6일차)TIL 2022. 11. 12. 20:05
선언적 함수와 익명 함수의 차이에 대한 고찰 선언적 함수와 익명 함수는 본질적으로 같다. 사실 선언적 함수는 함수 자체이고 자료형이라 말하기 어려운데, 자바스크립트에서 선언적 함수를 선언할 시 이를 자료형으로 만들어주기위해 함수의 이름으로 "let 함수이름 = function 함수이름 () {}" 이런식으로 강제로 자료형에다가 할당을 하게 되기 때문이다. 이런 이유로 자바스크립트에서는 함수를 자료형으로 취급할 수 있고, 이러한 이유로 콜백함수역시 존재하게 되는 것이다. 그런데 이렇게 강제로 선언적 함수를 자료형에 할당하기위해서는 웹브라우저가 순서대로 읽는 것이 아니라 자기가 강제로 처리할 것들을 먼저 처리하게 된다. 이것을 변수 호이스팅이라고 한다. 여기에 대해 아주 구체적으로 설명한 블로그 링크를 첨부..
-
[JavaScript] 함수 (익명 함수vs선언적 함수, 나머지 매개변수, 전개 연산자, 기본 매개변수)JavaScript 2022. 11. 11. 17:56
1. 익명함수 VS. 선언적 함수 익명함수는 말그대로 이름이 없는 함수이다. 따라서 익명함수를 선언하고 사용하기 위해서는 변수에 넣어서 사용하여야 한다. 즉, 함수를 정의시 "function () {}"와 같이 이름이 부여되지 않기 때문에, let 함수 = function () {};"와 같이 변수에 넣어서 호출해야한다. 선언적 함수는 함수를 선언할 때 이름을 붙여주는 함수를 말한다. "function 함수() {}"와 같이 선언하므로 따로 변수에 넣어주지 않고 선언할 때 붙여준 이름으로 호출하면 된다. 둘다 호출하는 방식은 똑같이 "함수()"가 된다. 다시 말하자면 함수 자체의 이름이 있냐 없냐(function 옆에 있는 이름)에 따라 달라지므로 let으로 변수에 넣는 것은 함수를 구분하는데 의미가 없..