모던 자바스크립트 튜토리얼 스터디 #1
파트1 코어 자바스크립트
자바스크립트는 '웹페이지에 생동감을 불어넣기 위해' 만들어진 프로그래밍 언어다.
자바스크립트로 작성한 프로그램을 스크립트(script)라고 부른다. 스크립트는 웹페이지의 HTML 안에 작성할 수 있는데 웹페이지를 불러올 때 스크립트가 자동으로 실행된다.
스크립트는 특별한 준비나 컴파일 없이 보통 문자 형태로 작성할 수 있고 실행도 할 수 있다.
자바스크립트는 브라우저뿐 아니라 서버에서도 실행할 수 있음
브라우저엔 '자바스크립트 가상 머신'이라 불리는 엔진이 내장되어 있다.
엔진의 동작 원리?
1.엔진이 스크립트를 읽는다(파싱)
2.읽어 들인 스크립트를 기계어로 전환합니다(컴파일)
3.기계어로 전환된 코드가 실행됩니다. 기계어로 전환되었기 때문에 실행 속도가 빠르다.
- 엔진은 프로세스 각 단계마다 최적화를 진행합니다. 심지어 컴파일이 끝나고 실행 중인 코드를 감시하면서, 이 코드로 흘러가는 데이터를 분석하고, 분석 결과를 토대로 기계어로 전환된 코드를 다시 최적화하기도 한다. 이런 과정을 거치면 스크립트 실행 속도는 더욱 더 빨라진다.
*브라우저에서 자바스크립트로 할 수 있는 일은 다음과 같다.
-페이지에 새로운 HTML을 추가하거나 기존 HTML, 혹은 스타일 수정하기
-마우스 클릭이나 포인터의 움직임, 키보드 키 눌림 등과 같은 사용자 행동에 반응하기
-네트워크를 통해 원격 서버에 요청을 보내거나, 파일 다운로드, 업로드하기(AJAX나 COMET과 같은 기술 사용)
-쿠키를 가져오거나 설정하기. 사용자에게 질문을 건네거나 메시지 보여주기
-클라이언트 측에 데이터 저장하기(로컬 스토리지)
*브라우저에서 할 수 없는 일
-웹페이지 내 스크립트는 디스크에 저장된 임의의 파일을 읽거나 쓰고 복사하거나 실행할 때 제약을 받을 수 있다. 운영체제가 지원하는 기능을 브라우저가 직접 쓰지 못하게 막혀있기 때문이다. 모던 브라우저를 사용하면 파일을 다룰 순 있지만 접근이 제한된다. 사용자가 브라우저 창에 파일을 끌어다 두거나 input 태그를 통해 파일을 선택할 때와 같이 특정 상황에서만 파일 접근을 허용한다.