[TIL] W1 / Day 1

alang·2021년 8월 2일
1

TIL

목록 보기
1/10
post-thumbnail

새롭게 배운 내용


1. DOM(Document Object Model)

HTML , XML 같은 문서를 구조화된 표현으로 제공해 프로그래밍 언어가 접근, 수정 할수 있게 돕는 객체 모델
- MDN 출처

  • 브라우저 렌더링을 과정을 거칠때 이 DOM을 토대로 렌더링하는것.
  • 트리의 구조를 가짐.

2. Garbage Collector

JavaScript의 메모리 정리를 위한 객체.
Garbage Collection이라는 자동 메모리 관리 알고리즘(Mark and Seep Algorithm)으로 만들어짐.

3. 스코프와 클로저

스코프

유효범위를 의미
var은 함수 레벨 스코프를 따르고
let, const는 블록 레벨 스코프를 따른다.

클로저

생명주기가 끝난 함수 밖에서 호출되더라도 함수 내 지역 변수에 접근할수 있는 함수.

  • 이때의 변수를 자유변수라고 부름.
  • 클로저는 이 자유변수에 엮여있는 함수라는 뜻

변수의 생명주기

  • 함수 내부에서 선언된 지역 변수는 함수가 생성한 스코프에 등록, 이때 JavaScript는 렉시컬스코프(정적스코프) 를 따른다. 이 변수는 자신이 등록된 스코프 소멸 될때까지 유효하다. 이 특성으로 인해 클로저가 가능 렉시컬 스코프란?

오늘 느낀점


1. 알아야할 기술들이 많다..!

  • 글로벌 서비스 -> i18n
  • 다대다 통화 -> WebRTC
  • 암호화 -> 블록체인 공부하며 살펴봤던것같다. 암호화 관련해서 좀더 심층있게 살펴보고, 프론트엔드에서 활용되는 로그인 인증 관련해서도 살펴봐야겠다
  • 자바스크립트 엔진에 대해서 살펴봐야겠다.
  • 효율적인 데이터의 생명주기 관리가 곧 최적화??
  • 책과 여러 링크들을 통해 클로저에 대해서 아? 정도까지는 알게된것같다. 좀더 확실한 이해를 위해선 실행 컨텍스트에 대한 이해가 좀더 필요해 보인다. 추가적으로 공부할 사항

2. TIL 이게 맞나싶다..?

  • 조금더 내용을 간소화하고, 좀더 깊이 다룬 내용들은 따로 포스팅하는것이 좋을것같다.
    -> 스스로 이해와 공부가 부족한 부분은 제거함

3. 궁금한점

  1. int , float , string , boolean 등 데이터 타입이 가지는 데이터크기가 어떻게 될까?
  2. 변수,상수를 통해 해당값을 데이터에 할당하여 사용할때 어떠한 크기로 할당되고 저장될까 ( 변수의 경우 데이터크기가 변하게되는데 어떻게 변해지는지)
  3. Garbage Collector 를 직접 제어할수있는지
  4. JavaScript에서의 데이터최적화 방법
  5. 원시타입과 참조타입에 대해서
  6. 배열의 length 를 조작하지 않는걸 권장하는 이유

과제


  1. var을 권장하지 않는 이유 보러가기
  2. http와 https의 차이 ( https의 도입 이유)

참고한 자료


  • 변수 호이스팅과 전역변수의 문제점 : 모던 자바스크립트 Deep Dive p42, p208
  • 변수의 생명 주기 : 모던 자바스크립트 Deep Dive p201
  • 클로저와 렉시컬 스코핑 : https://poiemaweb.com/js-closure
profile
안녕하세요. 개발자 지망생입니다.

0개의 댓글