5월28일 til

김병훈·2021년 5월 28일
0

til

목록 보기
8/89

벌써 금요일이 되었다.. 오늘은 오랜만에 solo데이로 혼자 스코프부터 클로저까지 공부를 하고 섹션별로 checkpoint문제를 풀고 17시에 checkpoint solution 시간을 줌에서 가졌다.

저녁에는 코플릿 배열문제를 풀고 줌시간을 다시 떠올리면서 스코프와 클로저 개념을 되새기는 시간을 가졌다.

스코프

  • 안쪽스코프에서 바깥 스코프는 접근이 가능하지만 , 바깥스코프에서 안쪽 스코프로는 접근이 불가하다.
  • 스코프는 중첩이 가능하다
  • 두 가지의 스코프가 있다. block scope , function scope
    블록 스코프는 중괄호로 둘러쌓여있고 , 함수스코프는 함수로 둘러 쌓여있다.
    예외적으로 화살표함수는 블록스코프로 분류된다.
  • 가장 바깥에 있는 스코프를 전역 스코프 (global)이라하고 나머지는 모두 지역 스코프라고 부른다 (local)
  • 지역변수(지역스코프에서 선언한 변수)는 전역변수(전역 스코프에서 선언한 변수)보다 더 높은 우선순위를 가진다. + let키워드를 사용하지 않고 선언하면 해당 변수는 전역에 선언된 해당 변수를 그대로 사용하겠다는 의미이다. 그래서 지역 스코프에서 새로 선언되지 않으면 그냥 같은 변수이다.

    let

  • 유효범위 : block , function scope
  • 값의 재할당 : 가능
  • 재선언 : 불가능

    const

  • 유효범위 : block, function scope
  • 값의 재할당 : 불가능
  • 재선언 : 불가능
    변하지 않는 값을 정의할 때 사용한다. 재할당이 불가능하기 때문에 , 의도하지 않은 값의 변경을 막을 수 있다.

    var

  • 유효범위 : function scope
  • 값의 재할당 : 가능
  • 재선언 : 가능
    var키워드는 for문이 만들어낸 block scope를 무시한다.
    그래서 그냥 let을 사용해서 재선언을 방지하는게 낫다.
profile
블록체인 개발자의 꿈을 위하여

0개의 댓글