객체(object)란?
- 프로그램에서 인식할 수 있는 모든 대상
- 데이터를 저장하고 처리하는 기본 단위
자바스크립트 객체
자바스크립트 안에 미리 객체로 정의해 놓은 것
- 문서 객체 모델(DOM) : 문서 뿐만 아니라 웹 문서 안에 포함된 이미지, 링크, 텍스트 필드 등을 모두 별도의 객체로 관리
- 브라우저 관련 객체 : 웹 브라우저 정보를 객체로 관리
- 내장 객체 : 웹 프로그래밍에서 자주 사용하는 요소를 객체로 정의해 놓음.
사용자 정의 객체
필요할 때마다 사용자가 직접 만드는 객체
객체의 인스턴스 만들기
객체를 사용하려면 일단 객체 인스턴스를 만들어야한다.
- 객체는 객체 자체가 아니라 인스턴스 형태로 만들어서 사용.
- 인스턴스 : 객체를 틀처럼 사용해서 같은 모양으로 찍어낸 것.
new 객체명
예) Date 객체의 인스턴스를 만들어서 날짜와 시간 표시하기
var now = new Date();
document.write("현재 시각은 : " + now);
Date객체를 생성해서 now라는 변수에 저장했다.
이제부터 now는 Date객체의 모든 성질(프로퍼티, 메소드)을 다 사용할 수 있다.
프로퍼티(property)와 메서드(method)
- 프로퍼티 : 객체의 특징이나 속성
- 메서드 : 객체에서 할 수 있는 동작
ex) 자동차의 프로퍼티와 메서드
프로퍼티 : 제조사, 모델명, 색상, 배기량 (자동차의 특징을 나타낼 수 있는것)
메서드 : 시동 걸기, 움직이기, 멈추기, 주차하기 (자동차가 할 수 있는 동작들)
ex) Date객체의 메소드 사용
var now = new Date();
document.write("현재 시각은 " + now.toLocaleString());
객체를 사용할때는 인스턴스를 먼저 만들고, 프로퍼티나 메서드를 붙여서 사용할 수 있다.
내장 객체 - Date 객체
Date 객체 인스턴스 만들기
1. 현재 날짜로 설정할 경우
(Date 객체로 현재 날짜 나타내기)
new Date();
2. 특정 날짜로 설정할 경우 : 괄호 안에 날짜 또는 날짜와 시간 입력
- Date 객체로 특정 날짜 나타내기
new Date("2020-02-25")
- Date 객체로 특정 날짜와 시간 나타내기
new Date("2020-02-25T18:00:00") // 날짜와 시간 사이에 T를 붙인다.
Date 객체의 메서드
1. 날짜/시간 정보를 가져오는 메서드
getFullYear() : 연도를 4자리 숫자로 표시합니다.
getMonth()
getDate()
getDay()
getTime() : 1970년 1월 1일 자정 이후의 시간을 밀리 초(1/1000초)로 표시합니다.
getHours()
getMinutes()
getSecond()
getMilliseconds()
2. 날짜/시간 정보를 설정하는 메서드
setMonth()
setDate()
setTime()
... 등
3. 날짜/시간 형식을 바꿔주는 메서드로 구분됨
toLocaleString() : 현재 날짜와 시간을 현지 시간(Local time)으로 표시합니다.
내장 객체 - Math 객체
- 수학 계산과 관련된 메서드가 많이 표함되어 있지만 수학식에서만 사용하는 것은 아님.
- 무작위 수가 필요하거나 반올림이 필요한 프로그램 등에서도 Math 객체의 메서들 사용함
- Math 객체는 인스턴스를 만들지 않고 프로퍼티와 메서드 사용
독서 챌린지 프로그램 만들기 (Date객체, Math객체 사용)
* Reference : Do it! HTML+CSS+자바스크립트 웹 표준의 정석
'JavaScript' 카테고리의 다른 글
[에러해결] Uncaught TypeError: $.ajax is not a function (0) | 2023.04.25 |
---|---|
[JavaScript] 자바스크립트 객체 (브라우저와 관련된 객체) (0) | 2022.08.15 |
[JavaScript] 자바스크립트 이벤트 (0) | 2022.08.15 |
[JavaScript] 함수(일반함수, 익명함수, 즉시실행함수, 화살표함수) (0) | 2022.08.14 |
[JavaScript] 자바스크립트 기본 문법 (반복문) (0) | 2022.08.13 |