1.1 자바스크립트란?

컬러·2021년 1월 11일
0

JavaScript

목록 보기
1/27

자바스크립트는 브라우저에서만 쓸 목적으로 고안된 언어이지만, 지금은 다양한 환경에서 쓰이고 있습니다.

자바스크립트란?

  • 자바스크립트는 웹페이지에 생동감을 불어넣기 위해 만들어진 프로그래밍 언어
  • 자바스크립트로 작성한 프로그램을 스크립트(script) 라고 부르며, 스크립트는 웹피이지의 HTML 안에 작성할 수 있는데 웹페이지를 불러올 때 스트립트가 자동으로 실행된다.
  • 스크립트는 특별한 준비나 컴파일 없이 보통의 문자형태로 작성할 수 있고, 실행할 수 있다.

브라우저에서 할 수 있는 일

  • 페이지의 새로운 HTML 추가, 기존 HTML 또는 스타일 수정
  • 마우스 클릭이나 포인터의 움직임, 키보드 키 눌림 등과 같은 이벤트 발생
  • 네트워크를 통해 원격 서버에 요청을 보내거나, 파일 다운로드, 업로드하기(Ajax 사용)
  • 쿠키를 가져오거나 설장하기, 사용자에게 질문을 건네거나 메시지 띄우기
  • 클라이언트 측에 데이터 저장하기(로컬 스토리지)

브라우저에서 할 수 없는 일

브라우저는 악성 웹페이지가 개인 정보에 접근하거나 사용자의 데이터를 손상하는 것을 막기 위해 자바스크립트의 기능에 제약을 걸어놓았다.

  • 웹페이지 내 스크립트는 디스크에 저장된 임의의 파일을 읽거나 쓰고 복사하거나 실행할 때 제약을 받을 수 있다.
    • 모던 브라우저를 사용하면 파일을 다룰 순 있다. 하지만 접근이 제한되어 있다.
    • 사용자가 브라우저 창에 파일을 '끌어다 두거나' <input> 태그를 통해 파일을 선택할 때와 같이 특정 상황에서만 파일 접근을 허용한다.
    • 카메라나 마이크 같은 디바이스와 상호 작용하려면 사용자의 명시적인 허가가 있어야 한다.

  • 브라우저 내 탭과 창은 대개 서로의 정보를 알 수 없다. 그런데 자바스크립트를 사용해 한 창에서 다른 창을 열 때는 예외가 적용된다.
    • 하지만 이 경우에도 도메인이나 프로토콜, 포트가 다르면 페이지에 접근할 수 없다.

  • 자바스크립트를 이용하여 페이지를 생성한 서버와 쉽게 정보를 주고받을 수 있다. 하지만 타 사이트나 도메인에서 데이터를 받아오는 건 불가능하다.
    • 가능하다 할지라도 원격 서버에서 명확히 승인을 해줘야 한다.

자바스크립트만의 강점

HTML/CSS와 완전히 통합할 수 있음

간단한 일은 간단하게 처리할 수 있게 해줌

모든 주요 브라우저에서 지원하고, 기본 언어로 사용됨

이 세가지를 모두 지원하는 브라우저 연관 기술은 자바스크립트 뿐!


0개의 댓글