JavaScript에서의 객체와 객체지향
기본적으로 배열이 0,1,2 ... 와 같이 숫자를 인덱스로 해서 값을 담아내는 그릇이라고 하면,
JavaScript에서의 객체는 이 인덱스가 숫자도 가능하지만, 문자로도 가능한 점이 특징이다.
따라서, 타 프로그래밍 언어에서는 연관배열(associative array) 또는 맵( map), 딕셔너리(Dictionary)라는 데이터 타입이 객체에 해당한다.
ex)
var val1 = {}; // {}; 의 표현이 객체 생성이다. []; 표현은 배열!
val1.val1 = 'ironmask';
val1.ironmask = 100;
val1['iromask2'] = 90;
==> Object {val1: "ironmask", ironmask: 100, ironmask2: 90}
==> val1['val1'] 은 "ironmask" 를 리턴
val1['va'+'l1'] 과 같은 표현도 가능
val.val1 과 같이도 사용 가능
===> 따라서, 'val1' 을 key라고 하고, 값을 value 로 부르는 경우가 많다.
한번에 값들을 정의하는 경우
// 이렇게 객체 내에 속성과 메소드를 그룹화해서 사용가능하므로, 이것이 JavaScript의 객체지향
var val1 = {
'list' : {'ironmask' : 100, 'LG' : 90, 'Samsung' : 80}
'show' : function() {
alert("hello world");
}
}
val1['show'](); // 함수는 이렇게 사용
* Tip
for(var key in val1) { // for in 문이라고 한다. (배열에서도 동일하게 사용 가능)
console.log(val1[key]); // key를 순회하면서, key에 대응하는 값들을 찍어준다.
}
'나는 프로그래머다! > HTML5' 카테고리의 다른 글
JavaScript - 이벤트 응용4 - jQuery 활용 (0) | 2015.07.30 |
---|---|
JavaScript - 이벤트 응용2 - 이벤트 타입 (0) | 2015.07.29 |
JavaScript - 이벤트 응용3 - 기본 이벤트 동작 취소 방법 (0) | 2015.07.29 |
JavaScript - 이벤트 응용1 (버블링과 캡쳐링) (0) | 2015.07.28 |
JavaScript - 이벤트 (0) | 2015.07.28 |
JavaScript의 함수!! (0) | 2015.07.21 |
JavaScript 재귀함수 예시 (0) | 2015.07.20 |
jQuery 와 Element 객체와 Node 객체 (0) | 2015.07.16 |
Attribute와 Property (0) | 2015.07.14 |
DOM Tree (0) | 2015.07.13 |