Front-end/javascript

[JavaScript] 호이스팅과 화살표함수

잔디🌿 2023. 7. 10. 21:11

함수도 값이라 변수나 상수에 담아서 사용이 가능하다.

 

let a = function(){
   return "안녕하세요";
   };
   
 console.log(a); // hello()함수 형식으로 출력된다.
 
 const aText = a();
 console.log(aText);// 안녕하세요가 출력된다.

 

호이스팅

 

호이스팅은 함수가 선언된 위치보다 위에서 함수를 호출하는게 가능하게 해주는 기능이다.

console.log(a());
console.log(b());

let a = function(){
   return "hi";
   }; // 함수 표현식
   
function b(){
   return "hello";
   }//함수 선언식

 

함수 선언식은 호이스팅이 가능하지만, 함수 표현식은 호이스팅이 불가능하다.

 

 

화살표 함수

 

let k = function(){
  return "hi";
  };
  
  console.log(k);
  
  
  
let sum = function(a,b){
    return a+b;
    };
let k = () => "hi";
console.log(k());


let sum = (a, b) => a + b;

두 함수는 같은 기능을 하지만 화살표함수는 호이스팅이 불가능하다는 단점이 있다.