본문 바로가기

러닝커뮤니티/웹프로그래밍

자바스크립트 객체, 외장객체, 내장객체(Math, Date)

객체

  • 기능이 유사한 것들 모아둔 집합체
  • 객체의 구성:
    • 속성(Property)
    • 메써드(Method)
      ex) 자동차 객체
    • 속성 : 차의 색깔, 차의 모양(오픈카, …) …
    • 메써드 : 전진, 후진, 좌회전, 우회전 …
  • 하나의 배열에 복합 데이터를 저장
  • 예 : 학생정보
  • 학생 이름 뿐만 아니라 학생의 학번, 성별, 주소 등을 같이 저장
  • 객체는 키와 값의 쌍으로 복합 정보를 저장

객체 저장 형식

{ “키1”: “값1”, “키2”: “값2”, … (생략) }

  • 객체의 요소에 접근 방식
    {객체명}.{키} 형식
  • 객체의 한 키/값 쌍을 프로퍼티라 함

괄호 표기법

  • 객체의 프로퍼티에 접근하는 방법
  • {객체명}[’{프로퍼티명}’]

중첩 객체

  • 객체의 프로퍼티의 값으로 객체를 가질 수 있음
  • 객체 안에 다른 객체 저장 가능
  • 예제 : 학생 객체
    • 이름 프러퍼티 안에 성 프러퍼티와 이름 프러퍼티 저장
    • 수강내역 프러퍼티에 배열로 과목 저장
  • 접근
    • 점 표기법 연결하여 사용
var student = {
    name: {
        first: '아리아나',
        last: '그란데'
    },
    classes: ['자바스크립트', '파이썬']
};

// 이름
console.log(student.name.first + student.name.last);

// 수강목록
console.log(student.classes[0] + ', ' + student.classes[1]);

내장 객체

  • 자바스크립트에서 자주 사용하는 기능을 미리 구현해 놓은 객체
    • Math, Number, Date, Array, Set 등 다양한 내장 객체가 존재

1) Math

수학적인 상수와 함수를 가진 객체

코드 설명
Math.PI 원주율
Math.abs(x) x의 절대값
Math.ceil(x), Math.round(x), Math.floor(x) x의 올림, 반올림, 버림
Math.sqrt(x) x의 제곱근
Math.sin(x), Math.cos(x), Math.tan(x) x의 싸인, 코싸인, 탄젠트
Math.max(x, y, ...), Math.min(x, y, ...) 인수 중 가장 큰수, 작은수

2) Date

날짜와 시간을 다루기 위한 객체

코드 설명
var today = new Date() 변수 today 에 현재 날짜, 시간을 저장
var someday = new Date(‘2019-06-03’) 변수 someday 에 2019년 6월 3일을저장
today.getFullYear() today 에 저장되어 있는 날짜의 4자리 연도를 반환
today.getMonth() today 에 저장되어 있는 달을 나타내는 0에서 11 사이의 수를 반환. 0은 1월
today.getDate() today 에 저장되어 있는 날짜의 '알'을 반환
today.getDay() today 에 저장되어 있는 날짜의 요일을 나타내는 0에서 6 사이의 수를 반환. 0은 일요일
today.getHours() today 에 저장되어있는 시간을 반환
today.getMinutes() today 에 저장되어있는 분을 반환
today.getSeconds() today 에 저장되어있는 초을 반환