JavaScript

언어소개

JavaScript

JavaScript는 웹페이지를 동적으로, 프로그래밍적으로 제어하기 위해서 고안된 언어다. 그렇기 때문에 오늘날 가장 중요한 플랫폼이라고 할 수 있는 웹브라우저에서 유일하게 사용할 수 있는 프로그래밍 언어이다. 최근에는 HTML5의 적용이 가속화되면서 지금까지 모바일 환경에서 네이티브 앱(안드로이드, IOS)으로 구현해왔던 기능이 웹에서도 대부분 구현할 수 있게 되고 있다. 웹이 크로스플랫폼이라는 점, 검색 가능하다는 점, 네이티브 디바이스를 제어할 수 있는 하드브리드 시스템(phonegap 등)이 존재한다는 점에서 웹의 중요함은 더욱 확대될 전망이다. 자연스럽게 웹에서 구동되는 유일한 언어인 JavaScript의 중요함도 점점 커질 것으로 예상된다.

자바스크립트로 할 수 있는 일을 참고하면 알 수 있지만, 최근에는 자바스크립트가 웹을 벗어나서 광범위하게 사용되고 있다. 그 효용이 다각적이면서도 배우기 쉬운 점 때문에 자바스크립트는 중급 개발자나 프로그래밍 입문자 모두가 도전해볼만한 언어다.

역사

HTML이 한번 화면에 출력된 후에는 그 형태나 동작방법을 바꿀 수 없는 문제를 해결하기 위해서 네스케이프에서 만들어졌다. 이후에 이 언어는 마이크로소프트의 인터넷 익스플로러에 jscript라는 이름으로 탑재된다. 후에 ECMA라는 표준화 기구로 이 언어의 관리 주체가 옮겨졌다.

ECMAScript

ECMAScript는 표준화 기구인 Ecma International에 의해서 관리되는 자바스크립트 표준안이다. 현재의 자바스크립트는 ECMAScript 3 기반으로 만들어졌고, 현재 시점(2013년)에서는 ECMAScript 5가 표준으로 정의 되었고 이 버전의 자바스크립트를 브라우저 벤더들이 자신들의 브라우저에 구현하는 작업이 한창이다. 곧 ECMAScript 5의 새로운 기능들을 웹에서도 문제 없이 사용할 수 있게 될 것이다. ECMAScript 4는 기존의 자바스크립트와 너무 큰 차이점 때문에 표준으로 채택되지 못했다.

JavaScript 학습에 요구되는 선행학습

웹페이지를 동적으로 제어하기 위한 목적으로 자바스크립트를 학습한다면 아래 내용은 반드시 선행해야한다. 아래 내용을 학습 한 후에 본 수업을 공부하고 DOM을 학습하면 웹페이지를 프로그래밍적으로 제어 할 수 있다. 최근에는 DOM을 직접 제어하는 것 보다는 jQuery와 같은 라이브러리를 사용하는 것이 일반적이다. DOM에 대한 내용은 DOM 수업을 참고하고 jQuery에 대한 내용은 jQuery 수업을 참고한다.

  • HTML
    • 웹페이지를 만드는 언어로 자바스크립트가 제어하는 직접적인 대상이다.
    • 생활코딩 HTML 수업HTML 사전을 참고한다.
  • CSS
    • 웹페이지를 꾸며주는 언어로 자바스크립트와 함께 사용되어 HTML을 보다 사용자 친화적인 문서, 응용프로그램으로 만들어준다.
    • 생활코딩 CSS 수업, CSS 사전을 참고한다.

JavaScript로 할 수 있는 일들

JavaScript에 영향을 준 언어

  • Java : 기본적인 문법
  • Scheme : 1급함수(first-class function) 함수의 인자와 반환값으로 함수를 사용
  • Self : prototype 기반의 상속 개념

참고

댓글

댓글 본문
작성자
비밀번호
  1. 한강
    사작합니다~!!!
  2. Jinhee Yi
    잘 봤습니다!
  3. 김희연
    완료
  4. 조현철
    완료
  5. 박병찬
    2020.0204 시작
  6. ProgrammerJoon
    2020.01.29 시작
  7. hyunoopy
    JavaScript로 adobe pdf 적혀 있는데 뭘 할 수 있는거에요?
  8. 2020.01.08
  9. 굼벵이
    완료
  10. 최상빈
    19.12.6 시작.
  11. 오현주
    인상깊은 오리엔테이션입니다.
  12. 정동욱
    12월 3일 완료
  13. 사업가
    19.11.21 시작. 모두완주하길 바랍니다
  14. 연구쟁이
    11/19 시작 !! 파이팅!!
  15. galangal
    19.11.09 완료
  16. hse05105
    11-11 까지 완수
  17. 미켈란젤로
    191106 완료
  18. 완료!
  19. 한승민
    191104
  20. anihwan
    191013 완료
  21. pppiii
    191002 완료
  22. vivianJ
    수강완료~~~
  23. 박창신
    수강시작
  24. Seung Lee
    시작합니다.
  25. wnajsldkf@naver.com
    20190918
  26. 김백차
    2019/9/10 시작
  27. ㅇㅇ
    2019 0908시작
  28. ㅋㅋ
    삭발함?
    대화보기
    • 김시은
      2019.08.23 금요일 11:37 시작
    • 정재규
      감사합니다.
    • eventme
      완료
    • leezigo1009@gmail.com
      댓글이 삭제가 안되요...
    • 삶이냐삭발이냐
      7월 13일 시작
      오늘부터 8월 1일까지 2회독하기

      **만약 하지 못할 시 삭발이랑 핸드폰 정지 ==> 진짜 지키겠습니다 ㅎㅎ
    • 숩숩이
      19.07.08 시작
    • 유진 바다 슈
      7월 4일 SES 시작
    • 원시윤
      7월 4일 시작
    • 송정은
      6월 30일 시작!
    • 시작합니다.
    • 20190622 시작
    • 20190610 시작
    • 20190609시작
    • 오소고날
      2019 6.3시작
    • 2019/6/2 시작!
    • 선경
      2019-06-01 시작!
    • 2019-05-26 시작
    • start!
    • start!!!
    • cheonghae
      19.05.04 시작
    • 최승윤
      19.05.02 시작!
    • 19.04.28 시작
    버전 관리
    egoing
    현재 버전
    선택 버전
    graphittie 자세히 보기