[모던자바스크립트] 1.자바스크립트 소개


이 글은 번역 및 정리 글입니다. 출처: javascript.info

자바스크립트 소개

자바스크립트는 처음에 웹 페이지를 생생하게 만들기 위해 만들어졌다. 이 언어의 프로그램을 스크립트라고 하는데, 웹페이지의 HTML로 바로 작성 될 수 있다.

스크립트는 일반 텍스트로 제공되고 실행되므로 특별한 준비나 컴파일이 필요하지 않다.

본래 이름은 라이브스크립트라는 이름이었으나, 자바가 폭발적인 인기를 끌고 있던 당시 자바의 인기에 편승하기 위해 이름을 개명했다. 즉, 이름에 자바가 붙은 이유는 마케팅일뿐 자바와 전.혀 관련이 없다.

최근 자바스크립트는 브라우저뿐 아니라 서버 또는 자바스크립트 엔진이라는 특수한 프로그램이 있는 모든 장치에서도 실행될 수 있다. 브라우저에도 자바스크립트 가상 머신이라고 하는 내장 엔진이 있다.

엔진마다 다른 코드네임이 있는데,

  • V8: 크롬 및 오페라
  • SpiderMonkey: 파이어폭스

위의 두가지가 가장 유명하다고 볼 수 있다.

엔진마다 특징이 있긴하지만 그런 디테일한 사항은 추후에 브라우저 스페시픽한 프로그램을 작성할 때 공부하자.

브라우저 내 자바스크립트는 무엇을 할 수 있나?

최신 자바스크립트는 안전한 프로그래밍 언어이다. 즉, 메모리, CPU 등 로우레벨 엑세스를 제공하지 않는다.

자바스크립트의 기능은 실행중인 환경에 따라 달라진다. 예를들어 Node.js는 자바스크립트가 임의의 파일을 읽고 쓰고 네트워크 요청을 수행할 수 있는 기능을 지원한다.

브라우저 내에서는 웹 페이지 조작, 사용자와의 상호 작용 및 웹 써버와 관련된 모든 작업을 수행 할 수 있다.

  • 페이지에 새 HTML을 추가, 기존 컨텐츠 변경, 스타일 수정
  • 사용자 동작에 반응하고 마우스 클릭, 포인터 이동, 키 누름등의 이벤트
  • 네트워크를 통해 요청을 원격 서버로 보내고 파일을 다운로드 및 업로드
  • 쿠키를 가져오고 설정하고 방문자에게 질문하고 메시지를 표시하는 것
  • 클라이언트 측 데이터 보관

할 수 없는것은?

브라우저의 자바스크립트는 안전하게 제한되어 있다. 악의적인 페이지가 개인 정보나 사용자의 데이터를 손상시키는것을 방지하기 위해서이다.

  • 하드 디스크의 임의의 파일을 읽거나 쓰거나 복사 하는것. OS 시스템에 직접 엑세스하는것.
  • 다른 탭이나 윈도우는 일반적으로 서로에 대해 알지 못한다.
  • 현재 페이지가 있는 서버와는 쉽게 통신할 수 있으나. 다른서버와는 명시적 동의가 없다면 통신할 수 없음.

자바스크립트의 특징

  • HTML/CSS와의 콜라보.
  • 간단한 작성.
  • 모든 주요 브라우저에서 지원됨.

자바스크립트 확장

요구사항에 맞춰 자바스크립트의 확장들이 생겨남.

  • 커피스크립트, 타입스크립트, 플로우, 다트 등등





© 2017. by isme2n

Powered by aiden