각진 세상에 둥근 춤을 추자
[JavaScript] 객체 본문
자바스크립트는 객체 기반 프로그래밍 언어이다.
자바스크립트의 객체에는 내장 객체, 브라우저 객체 모델(BOM, Browser Object Model), 문서 객체 모델(DOM, Document Object Model)등이 있다.
내장 객체(Built-in Object)는 자바스크립트 엔진에 내장되어 있어 필요한 경우 생성해 사용할 수 있다.
내장 객체는 문자(String), 날짜(Date), 배열(Array), 수학(Math) 객체 등이 있다.
내장 객체를 생성하는 기본형은 다음과 같다.
참조 변수(인스턴스 이름) = new 생성함수()
간단한 예제를 통해 내장 객체 생성에 대해 알아본다.
[예제]
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>내장 객체 생성하기</title>
</head>
<body>
<script>
let tv = new Object();
tv.color = "white";
tv.price = "3000000";
tv.info = function() {
document.write("tv 색상: " + this.color + "<br/>");
document.write("tv 가격: " + this.price + "<br/>");
}
document.write("<h1>tv 겍체 메서드 호출</h1>");
tv.info();
</script>
</body>
</html>
날짜 정보 객체
날짜, 시간 관련 정보를 제공받고자 할 때는 날짜 객체(Date Object)를 생성한다.
날짜 정보 객체를 이용하여 달력과 D-day 계산기도 만들 수 있다.
참조 변수 = new Date();
참조변수 = new Date("연/월/일");
참조변수 = new Date("연, 월-1, 일);
날짜 관련 메서드는 다음과 같다.
[예제1] 오늘 날짜 정보와 2002년 월드컵 날짜 관련 정보 출력하기
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Date Object</title>
</head>
<body>
<script>
let week = ['일요일','월요일','화요일','수요일','목요일','금요일','토요일'];
let wolrdCup = new Date("2002/05/31");
let theMonth = wolrdCup.getMonth(),
theDate = wolrdCup.getDate();
let i = wolrdCup.getDay();
const theDay = week[i];
document.write("<h1>월드컵 날짜 정보</h1>");
document.write("Month: " + theMonth + "<br/>");
document.write("Date: " + theDate + "<br/>");
document.write("Day: " + theDay + "<br/>");
document.write("<h1>2022 월드컵</h1>" );
document.write("2022년 " + theMonth + "월 " + theDate + "일 " + theDay);
</script>
</body>
</html>
[예제2] 현재 날짜부터 특정 날짜까지 며칠 남았는지 계산하기
남은 날짜(일, 밀리초 단위) = 특정 날짜 객체 - 현재 날짜 객체
1초 = 1,000(millisecends, msc)
1분 = 1000 * 60 (msc)
1시간 = 1000 * 60 * 60
1일 = 1000 * 60 * 60 * 24
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>현재 날짜부터 특정 날짜까지 며칠 남았는지</title>
</head>
<body>
<script>
let today = new Date();
let exam = new Date(2022,10,17);
// 남은 날 = 특정 날짜 - 현재 날짜 (밀리초 단위))
let restDate = exam.getTime() - today.getTime();
let result = Math.ceil(restDate / (60*1000*60*24));
document.write("<h1> 2023 대학수학능력시험까지 " + result + "일 남았습니다 </h1>");
</script>
</body>
</html>
[예제3] 실시간 시각 (자동 새로고침)
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>실시간 시간</title>
</head>
<script>
setInterval("timer()", 1000);
function timer() {
let now = new Date();
hours = now.getHours();
minutes = now.getMinutes();
seconds = now.getSeconds();
let result = ("<h1> 현재 시각 <n/> " + hours + ":" + minutes + ":" + seconds + "</h1>");
document.getElementById("timer").innerHTML = result;
}
</script>
<span id="timer">오후 01:44:40</span>
<body>
</body>
</html>
'JavaScript' 카테고리의 다른 글
[JS] 배열 객체 (0) | 2022.10.09 |
---|---|
[JavaScript] 수학 객체 (0) | 2022.10.09 |
[JavaScript] 반복문 (0) | 2022.10.08 |
[JavaScript] 선택문 (0) | 2022.10.08 |
[JavaScript] 조건문 (0) | 2022.10.07 |