모던자바스크립트 DeepDive - 02.자바스크립트란

Younngg·2022년 6월 19일

JavaScript

목록 보기
1/11
post-thumbnail

02 자바스크립트란?

자바스크립트의 탄생

  • 1995년, 웹페이지의 보조적인 기능을 수행하기 위해 브라우저에서 동작하는 경량 프로그래밍 언어 도입하기로 결정
  • 브렌던 아이크가 개발

자바스크립트의 표준화

  • 크로스 브라우징 이슈로 인해 모든 브라우저에서 정상적으로 동작하는 웹페이지를 개발하기 어려워짐
  • 1996년 11월, 넷스케이프 커뮤니케이션즈는 ECMA 인터네셔널에 자바스크립트의 표준화를 요청
  • 1997년 7월 자바스크립트 초판(ECMAScript 1) 사양이 완성
  • 2015년 ECMAScript 6(ECMAScript 2015, ES6)은 let/const, 화살표 함수, 클래스, 모듈 등을 도입

자바스크립트 성장의 역사

Ajax

  • 1999년, 자바스크립트를 이용해 서버와 브라우저가 비동기 방식으로 데이터를 교환할 수 있는 통신 기능인 Ajax가 XMLHttpRequest라는 이름으로 등장
  • 이전에는 화면이 전환될 때마다 서버로부터 새로운 HTML을 전송받아 처음부터 다시 렌더링 함
  • Ajax 등장 이후, 필요한 데이터만 전송받아 변경할 부분만 한정적으로 렌더링하는 방식이 가능해짐

jQuery

V8 자바스크립트 엔진

Node.js

  • 구글 V8 자바스크립트 엔진으로 빌드된 자바스크립트 런타임 환경
  • 자바스크립트를 브라우저 이외의 환경에서도 동작할 수 있도록 함
  • 비동기 I/O를 지원하며 싱글 스레드 이벤트 루프 기반으로 동작함

SPA 프레임워크

자바스크립트와 ECMAScript

  • ECMAScript는 프로그래밍 언어의 값, 타입, 객체와 프로퍼티, 함수, 표준 빌트인 객체 등 핵심 문법을 규정한다.
  • 자바스크립트는 일반적으로 프로그래밍 언어로서 기본 뼈대를 이루는 ECMAScript와 브라우저가 별도 지원하는 클라이언트 사이드 Web API, 즉 DOM, BOM, Canvas, XMLHttpRequest, fetch, requestAnimationFrame, SVG, Web Storage, Web Component, Web Worker 등을 아우르는 개념이다.

자바스크립트의 특징

  • 자바스크립트는 HTML, CSS와 함께 웹을 구성하는 요소 중 하나로 웹 브라우저에서 동작하는 유일한 프로그래밍 언어다.
  • 개발자가 별도의 컴파일 작업을 수행하지 않는 인터프리터 언어이다.
컴파일러 언어인터프리터 언어
코드가 실행되기 전 단계인 컴파일 타임에 소스코드 전체를 한번에 머신 코드로 변환 후 실행코드 실행 단계인 런타임에 문 단위로 한 줄씩 중간 코드인 바이트 코드로 변환 후 실행
실행 파일 생성실행 파일 생성x
컴파일과 실행 단계 분리됨. 명시적 컴파일 단계 거친 뒤 명시적으로 실행 파일 실행인터프리터, 실행 단계 분리x 한 줄씩 변환하고 즉시 실행
실행 전 컴파일 단 한번 수행코드가 실행될 때마다 인터프리트 과정이 반복 수행
단계 분리로 인해 코드 실행 속도 빠름반복 수행으로 인해 코드 실행 속도 비교적 느림
  • 자바스크립트는 명령형, 함수형, 프로토타입 기반 객체지향 프로그래밍을 지원하는 멀티 패러다임 프로그래밍 언어다.
profile
8533283@naver.com

0개의 댓글