CH Park
by CH Park

Categories

  • JavaScript

Tags

  • Object


Javascript 객체

  • 자바스크립트 객체는 내장 객체와 사용자 정의 객체로 구분
  • 자바스크립트 객체는 속성과 메소드를 가짐
  • 객체 속성 값으로 또 다른 객체를 가질 수 있는 계층적 구조

내장 객체

  • 자바스크립트가 제공하는 Array, Date, Math, String
  • 웹 브라우저가 제공하는 window, navigator, document

Javascript가 제공하는 내장 객체

Date 객체: 컴퓨터에서 제공되는 날짜와 시간을 담은 객체

  • 메소드
    • getFullYear(): 연도
    • getMonth(): 월
    • getDate(): 일
    • getDay(): 요일
    • getHours(): 시간
    • getMinutes(): 분
    • getSeconds(): 초
    • getTime(): 1970년 1월 1일 이후 현재까지의 시간을 ms 단위로 리턴
    • getTimezoneOffset(): 표준시와 현지 시간의 차이를 분 단위로 표현
    • setFullYear(): 연도 설정
    • setMonth(): 월 설정
    • setDate(): 일 설정
    • setDay(): 요일 설정
    • setHours(): 시간 설정
    • setMinutes(): 분 설정
    • setSeconds(): 초 설정
    • setMillseconds(): millisecond 값 설정

Math 객체: 널리 알려진 상수나 함수들에 대한 객체. 별도의 선언이나 생성과정 없이 바로 사용 가능.

  • 속성
    • E: 자연 상수
    • LN2: 자연로그 2
    • LOG2E: loge / log2
    • PI: 파이(3.14…)
    • SQRT2: 루트 2
  • 메소드
    • cos(), sin(), tan(): 삼각함수
    • acos(), asin(), atan(): 삼각함수의 역함수
    • ceil(), floor(), round(): 올림, 내림, 반올림
    • max(), min(), abvs(): 최대, 최소, 절대값
    • sqrt(x), pow(x, y): 루트 x, x의 y승
    • log(x), exp(x): x의 자연로그, e의 x승

배열 객체:

  • 배열의 각 요소는 동일한 자료형이 아니어도 됨.
  • 배열의 크기는 유동적
  • 배열의 생성은 new 연산자를 이용하거나 배열 리터럴을 이용한다.
    • ex) var book_arr = new Array(“a”, “b”, “c”);
    • ex2) var book_arr2 = [“a”, “b”, “c”];
    • ex3) var arr100 = new Array(100);
  • 배열 요소는 배열이름[인덱스]와 같이 접근한다.
  • 배열 사용법
    • arr[4] = “1 + 2”; <= 원소 추가
    • arr.length = 3; <= 배열 축소(초과되는 원소 제거)
    • arr[1000] = 1000; <= 중간 인덱스 값들은 없는 상태로 추가 가능
  • 배열 객체 메소드
    • reverse(): 요소들의 순서를 반대로
    • sort(): 요소들의 순서를 오름차순으로. 숫자도 문자열로 변환하여 순서 결정 후 다시 숫자로 되돌린다.
    • join(): 배열 내 요소를 모두 연결한 하나의 문자열을 생성. 요소 사이에 끼워 넣을 문자열을 지정할 수 있음.
    • concat(): 배열 뒤에 요소를 붙여서 배열 내용을 추가
    • slice(): 배열의 요소들 중 일부만을 새로운 배열로 만듦.

브라우저 제공 내장 객체

window 객체

  • 브라우저 창에 대한 객체
  • open(): 새로운 창을 여는 메소드
  • close(): 열려 있는 창을 닫는 메소드
  • alert(), confirm(), prompt()
  • 브라우저 정보를 갖고 있는 객체(브라우저 버전 등)

document 객체

  • HTML 문서에 대한 객체

사용자 정의 객체

  • 생성방법 1: new 명령어로 Object 생성 후 속성 및 메소드를 동적으로 추가 가능
    var book = new Object();
    book.title = "자바스크립트 정리";
    
  • 생성방법 2: 초기화를 통한 객체 생성
    var book = {title: "자바스크립트 정리"};
    
  • 접근방법: .을 통해 접근. 속성의 이름을 모르더라도 for 문으로 접근 가능.
    for (var p in book) {}
    
  • 객체에서 속성을 삭제
    delete book.title;
    

객체 생성자

  • 생성자 함수: 객체를 생성하는 함수
  • this: 객체 자신을 지칭하는 키워드
  • 객체의 속성값으로 함수를 저장하면 그 객체의 메소드가 된다.
    function Book(title_value) {
      this.title = title_value;
    }