V8 엔진은 어떻게 내 코드를 실행하는 걸까?

이번 포스팅에서는 구글의 V8 엔진이 어떤 방식으로 자바스크립트를 해석하고 실행하는지 살펴 보는지에 대해 포스팅하려고 한다. V8C++로 작성되었지만 필자의 메인 언어가 C++이 아니기도 하고, 워낙 소스가 방대하기 때문에 자세한 분석까지는 아니라도 최대한 웹 상에 있는 정보들과 필자가 분석한 V8의 소스코드를 비교해가면서 살펴보려고 한다.

JavaScript의 let과 const, 그리고 TDZ

이번 포스팅에서는 JavaScript ES6에서 추가되었던 letconst 키워드에 대해서 자세히 포스팅하려고 한다. 부끄럽지만 지금까지 필자는 letconst는 호이스팅이 되지 않는다고 생각하고 있었다. 하지만 얼마 전 친구와 대화하던 중에 letconst도 호이스팅 대상체이지만 TDZ라는 특수한 영역을 사용하여 참조를 방어하는 것임을 알게 되었다.

Aamazon Web Service Agile Algorithm Array Atlassian Audio Average Backpropagation Data Driven Data structure Deep Learning Essay Event Loop Express Git Good Programmer Gravity HTTP HTTP/2 Hash Table Hoisting IP JavaScript JavaScript Audio API Jira MFS Machine Learning Memory leak Network NodeJS Notification API OOP Object Oriendted Programming PWA Paypal Progressive Web Application Render Optimizing SEO SPA SSR Server Side Rendering Single Page Application Sort Algorithms Sound Engineering TDZ Temporal Dead Zone Tutorial TypeScript V8 Versioning Vue Web Web Push Webpack memory-fs traceroute webpack dev middleware webpack dev server 개발서적 객체지향프로그래밍 공동집필 궤도 구현하기 나이퀴스트 난수생성알고리즘 네트워크 논리학 누적평균 데이터 기반 의사결정 딥러닝 렌더 최적화 머신러닝 메르센 트위스터 배열 성능 최적화 버전관리 사운드 엔지니어 서버사이드 렌더링 소프트웨어 개발 방법론 수학 알고리즘 애자일 애자일 프로세스 에세이 역전파 알고리즘 오디오 이펙터 이벤트 루프 자료구조 정렬 알고리즘 조직문화 좋은 프로그래머 중력 중력 구현하기 철학 커피 한잔 마시며 끝내는 VueJS 컴퓨터 공학 케플러 6요소 케플러 궤도 방정식 타입스크립트 타입스크립트 인공 신경망 퇴사 튜토리얼 페이팔 평균구하기 프로그래밍 프로그래밍서적 해시테이블 협업 호이스팅 회고 회고록
Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×