[바로실습] 생활코딩 - 자바스크립트(Javascript)
    • 01
      언어소개
    • 오리엔테이션
      실행방법과 실습환경
    • 02
      자바스크립트
    • 자바스크립트 기본
    • 03
      숫자
    • 수의 표현
      수의 연산
    • 04
      문자
    • 문자의 표현
      문자의 연산
    • 05
      변수
    • 변수의 사용법
      변수의 효용
    • 06
      주석
    • 주석
    • 07
      줄바꿈과 여백
    • 줄바꿈과 여백
    • 08
      비교
    • 연산자란?
      == ===
      ===를 사용하자
      부정과 부등호
    • 09
      조건문
    • 조건문이란?
      else, else if
      조건문의 응용
      논리연산자
      Boolean의 대체재
    • 10
      반복문
    • 조건문이란
      반복조건
      for 문
      반복문의 효용
      제어(break, continue)
      중첩사용과 디버거
    • 11
      함수
    • 함수의 형식
      함수의 효용
      함수의 입력
      함수의 출력
      다양한 정의 방법
    • 12
      배열
    • 배열의 문법
      배열의 효용
      배열과 반복문의 조우
      원소의 추가
      원소의 제거와 정렬
    • 13
      객체
    • 객체의 문법
      for in loop
      객체 지향 프로그래밍
    • 14
      모듈
    • 모듈이란?
      모듈화
      Node.js의 모듈화
      라이브러리란?
      라이브러리의 사용
    • 15
      UI, API 그리고 문서
    • 수업소개
      문서보는법
    • 16
      정규표현식
    • 오리엔테이션
      패턴만들기
      RegExp 객체의 사용
      String과 정규 표현식
      옵션(i,g)
      사례 : 캡처
      사례 : 치환
    • 17
      함수지향
    • 함수지향
    • 18
      함수지향:유효범위
    • 전역변수와 지역변수
      유효범위의 효용
      전역변수를 사용하는법
      유효범위의 대상
      정적 유효범위
    • 19
      함수지향:값으로서의 함수와 콜백
    • 함수의 용도 1
      함수의 용도 2
      콜백이란?
      비동기 콜백과 Ajax
    • 20
      함수지향:클로저
    • 외부함수, 내부함수
      클로저란?
      Private variable
      클로저의 응용
    • 21
      함수지향:arguments
    • arguments 소개
      function.length
    • 22
      함수지향:함수의 호출
    • apply 소개
      apply의 사용
    • 23
      객체지향
    • 객체지향
    • 24
      객체지향:프로그래밍
    • 객체
      설계와 추상화
      부품화
    • 25
      객체지향:생성자와 new
    • 자바스크립트의 객체지향
      객체생성
      생성자, new
    • 26
      객체지향:전역객체
    • 전역객체란?
    • 27
      객체지향:this
    • 함수와 this
      메소드와 this
      생성자와 this
      객체로서 함수
      apply와 this
    • 28
      객체지향:상속
    • 상속이란?
      상속의 사용법
      기능의 추가
    • 29
      객체지향:prototype
    • prototype이란?
      prototype chain
    • 30
      객체지향:표준 내장 객체의 확장
    • 표준 내장 객체란?
      배열의 확장1
      배열의 확장2
    • 31
      객체지향:Object
    • Object란?
      Object API 사용법
      Object 확장
      Object 확장의 위험
    • 32
      객체지향:데이터 타입
    • 원시 데이터 타입과 객체
      레퍼객체
    • 33
      객체지향:참조
    • 복제란?
      참조와 변수
      함수와 참조
    • 34
      패턴
    • 패턴이란?
      재귀함수
    • 35
      마무리
    • 수업을 마치며
    오리엔테이션
    01 언어소개
    오리엔테이션

    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 기반의 상속 개념

    참고

    질문하기