18일차 - 2022.03.18 (~17일차 복습 시작)

안병욱·2022년 3월 18일
0

오늘 공부한 내용 요약

( 모던 JavaScript 튜토리얼 복습 )

자바스크립트 기본

헷갈렸거나 한번 더 상기시킬 내용

  • 지금의 자바스크립트에서는 스크립트에 주석, type속성, language 속성을 사용하지 않아도 됨

  • script 태그는 scr 속성과 동시에 사용될 수 없음

  • 세미클론을 사용하는 것이 오류를 줄이는 습관이 될 수 있다.

  • 스크립트 최상단이나 함수 본문 맨 앞에 'use strict'이 오면 모던한 방식으로 동작

  • 콘솔에서는 'use strict' 입력후 shift + enter키 누르고 원하는 스크립트 입력

  • 변수를 여러번 선언시 오류/ 참조하려면 let 없이 변수명으로만 실행

  • 변수명에는 숫자, 문자와 $, _만 가능

  • 아주 큰 숫자를 사용할 경우에 BigInt 사용/ 값 끝에 n을 붙이면 됨

  • typeof null에서 null은 객체가 아니지만 언어자체의 오류로 object 출력

  • prompt(보여줄 문자열, 초깃값)는 모달창을 띄워줌

  • 숫자형으로 변환시 null과 false는 0 / true는 1 / undefined는 NaN

  • 앞에 +를 붙이는 것으로 number()와 같은 효과

  • 증가/감소 연산자는 변수에만 사용가능

let counter = 0;
alert( ++counter ); // 1  (증가후 새로운값 반환)

let counter = 0;
alert( counter++ ); // 0  (증가전 기존값 반환)
  • 헷갈릴 수 있는 연산
alert(“” + 2 + 1);   -> 문자열 21
alert( “a” + 0 + 1); =>  a01
alert( 0 + 1 + “a”);  => 1a


( Core JavaScript 기본서 )

실행 컨텍스트

실행 컨텍스트는 실행할 코드에 제공할 정보들을 모아놓은 객체

  • 스택 - 우물같은 구조 / abc 순으로 저장하면 cba순으로 나옴
    큐 - 양쪽 열려있는 파이프 구조 / abc 순으로 저장하면 abc 순으로 나옴

  • 과정

  1. 자바스크립트 코드를 실행하는 순간(자바스크립트 파일이 열리는 순간) 전역 컨텍스트가 콜 스택에 담김
  2. 함수 호출시 환경정보를 수집해서 해당함수의 실행컨텍스트를 생성한후 콜 스택에 담음
  3. 함수의 실행이 종료되면 해당 함수의 실행 컨텍스트가 콜 스택에서 제거됨
  4. 전역 공간에 실행할 코드가 남지 않게 되면 전역 컨텍스트도 제거됨
  5. 콜스택에 아무것도 없는 상태로 종료

  • 활성화된 실행 컨텍스트에는
    variableEnvironment, LexicalEnvironment, ThisBinding 이 담김

1) variableEnvironment (환경변수) - 동적인 값들의 모임
담기는 내용은 LexicalEnvironment와 같지만 최초 실행시의 스냅샷을 유지함.

실행 컨텍스트를 실행시 여기에 정보를 먼저 담고 ->
복사해서 LexicalEnvironment를 만들고 ->
LexicalEnvironmen를 주로 활용함

2) LexicalEnvironment (렉시컬 환경, 어휘적 환경 ) - 정적인 값들의 모임


공부 출처

자바스크립트.info
코어 자바스크립트 -정재남 지음 -


위의 내용은 공부중 본인이 이해한 내용으로 몇몇 틀린 내용이 있을 수 있습니다.
회독중 발견시 수정하겠습니다

profile
working hard

0개의 댓글