언어/Java Script

자바스크립트 기초 이론 - 패캠 node.js 바탕 기본 2

쟈누이 2021. 8. 1. 21:01
반응형

 

1. hoisting  -var


  • var  =>  선언만보이는 위치에서 끌려 올라간다.
  • hoisting : 변수의 선언(만)을 해당 스코프의 맨 위로 끌어올리는 것을 뜻함
  • function 도  hoisting 대상이며
  • 함수의 선언과 값의 초기화는 서로 다르다.

 

 

 

 


2. function,  lexical scope


 

강의 이미지 일부 캡처

  • 코드의 어떤 식별자가 실제로 어떤 값을 가리키는지 결정하는 것을 binding 이라고 한다

 

강의 이미지 일부 캡처

  • 자바 스크립트에서의 binding 은 lexical scope 를 통해 이뤄진다
  • lexical scope 란 간단히 말하자면 안쪽에서 바깥쪽 변수에 접근할 수 있다는 것이다. 

 

 

 


3. var, blocking scoping


강의 이미지 일부 캡처

  • var 는 blocking scoping 의 대상이 아니다
  • 하지만, let 과 const 는 blocking scoping 의 대상

 

 

 


4. Closure


  • closure function + environment

강의 이미지 일부 캡처

  • closure 는 함수가 하나 생길때마다 하나씩 생긴다
  • environment 는 함수 자신을 둘러깐, 접근 가능한 모든 스코프를 뜻함
  • closurehigher - order 함수를 만드는데 유용하다.

강의 이미지 일부 캡처
강의 이미지 일부 캡처



반응형