객체
•
자바스크립트는 객체 기반 언어이다.
◦
객체 지향 언어가 아니다.
코어 객체
•
자바스크립트 언어가 실행되는 어디에서나 사용 가능한 기본 객체이다.
•
기본 객체로, 표준 객체이다.
•
Array, Date, String, Math 타입 등이 있다.
•
웹 페이지 자바스크립트 코드에서 혹은 서버에서 사용 가능하다.
<head>
<script>
var today = new Date();
document.write(today.toGMTString());
var str = new String("");
document.write(str);
document.write(str.length);
</script>
</head>
HTML
복사
Date 객체
var now = new Date(); // 현재 날짜 값으로 초기화된 객체를 생성한다.
console.log(now.getFullYear());
console.log(now.getMonth());
console.log(now.getDate());
console.log(now.getHours());
console.log(now.getMinutes());
console.log(now.getSeconds());
console.log(now.getMilliseconds());
var next = new Date(2017, 7, 15, 12, 12, 12);
console.log(next.toLocaleString()); // 7 은 8월을 의미한다.
JavaScript
복사
•
시간 정보를 담는 객체이다.
String 객체
var hello = new String("HELLO");
var length = hello.length;
// 문자열을 배열처럼 사용할 수 있다.
var c = hello[0];
JavaScript
복사
Math 객체
•
수학 계산을 위한 property 와 method 를 제공한다.
•
new Math() 로 객체를 생성하지 않는다.
사용자 객체
function inquiry() {
return this.balance;
};
function deposit(money) {
return this.balance += money;
};
var account = new object();
account.owner = ""; // 프로퍼티 생성 및 초기화
account.code = ""; // 프로퍼티 생성 및 초기화
account.balance = 10000; // 프로퍼티 생성 및 초기화
account.inquiry = inquiry; // 메서드 작성
account.deposit = deposit; // 메서드 작성
document.deposit(10000);
...
// 리터럴 표기법
var account = {
owner: "",
code: "",
balance: 10000,
inquiry : function() {
this.balance;
},
deposit : function deposit(money) {
this.balance += money;
}
};
JavaScript
복사
HTML DOM 객체
•
HTML 문서에 작성된 각 HTML 태그들을 객체화 한 것들이다.
•
HTML 문서의 내용과 모양을 제어하기 위한 목적이 있다.
•
W3C 의 표준 객체이다.
브라우저 객체
•
자바스크립트로 브라우저를 제어하기 위해 제공되는 객체이다.
•
BOM(Brower Object Model) 에 따르는 객체들이다.
•
비표준 객체이다.
배열
배열 만드는 방법
•
[] 로 배열을 만든다.
◦
[] 안에는 원소들의 초기 값을 나열한다.
◦
이렇게 생성해도 Array 객체로 다루어진다.
•
Array 객체로 배열을 만든다.
var week = new Array("","",...) // 초기값이 존재하는 배열
var week = new Array(7); // 원소의 개수를 지정해준다.
var week = new Arrya(); // 빈 배열을 생성한다.
JavaScript
복사
•
배열의 크기는 고정되지 않고, 마지막 원소 추가 시 늘어난다.
•
배열에 여러 타입의 데이터 저장이 가능하다.