v8엔진과 javascript 입문

eslint_0123·2023년 6월 26일

javascript

목록 보기
7/8

1단원 eslint에 대해 설명하는 구간에 나오는 말이다.

javascript가 정말 컴파일을 하지 않는가? 아니다. 인터프리터 방식과 컴파일 방식 모두 취한다.

javascript의 공식문서라고 볼 수 있는 mdn을 참고해보자.

먼저 javascript는 인터프리터 언어 이면서 JIT컴파일 프로그래밍 언어라고 한다.

JIT 컴파일 프로그래밍을 알기전에 v8엔진에 대해서 알아봐야한다.


v8엔진이란?

v8.dev를 참고하였다.

V8은 C++로 작성된 Google의 오픈 소스 고성능 JavaScript 및 WebAssembly 엔진입니다. Chrome 및 Node.js 등에서 사용됩니다.

공식문서를 보면 v8은 javascript의 엔진이다.

V8은 JavaScript 소스 코드를 컴파일 및 실행하고 객체에 대한 메모리 할당을 처리하며 더 이상 필요하지 않은 객체를 가비지 수집합니다.

즉, v8 엔진은 js 소스코드를 컴파일 및 실행합니다. 또한 GC를 이용한다는 것이 v8엔진의 핵심이라고도 볼 수 있다.

jit에 대해서도 알아보고 싶다. 하지만 jit-less와 jit가 많이 헷갈리고 memory를 다루고 말고의 차이점이 있다고 하지만 그게 어떤 차이인지 그리고 TurboFan optimizing compiler에 대해서도 알아야할 것 같다.


Eslint란?

간단하게 말해서 javascript를 사용할 때 버그가 생길 수 있는 부분 혹은 정규패턴을 따르지 않을 경우 문제를 제기하는 것이다.

자세한 규칙 등은
https://eslint.org/docs/latest/use/core-concepts

eslint 공식 문서를 참고하면 된다.


javascript의 use strict 모드

즉 엄격모드라고 한다. 엄격 모드에서 제한되는 문법도 있다. 하지만 브라우저마다 엄격모드를 지원하는 경우도 있고 아닌 경우도 있기 때문에 하나만 공부해라! 하기 어렵다.

profile
Frontend 개발자 이예슬입니다.

0개의 댓글