일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 자바
- 게시판
- 아이콘
- JavaScript
- 생명주기
- Android
- CSS
- 인텐트
- Java
- Spring
- Resources
- #청주주님의교회
- 안드로이드
- 프로그래밍
- Selector
- 안드로이드 AVD
- 주님의교회
- 웹개발
- androidstudio
- Activity
- jQuery
- 제이쿼리
- 회원가입
- 글쓰기
- TinyMCE
- Intent
- 에디터
- 청주
- 영성
- java 8
- Today
- Total
공부하는 블로그
JavaScript 객체 본문
JavaScript의 모든 객체는
object 자료형이며, 속성과 행위(이하 메서드)를 포함할 수 있다.
또한 동적으로 속성과 메서드를 지정할 수 있다.
모든 객체는 기본적으로 최상위인 Object클래스의 속성과 메서드를 상속받고 있다.
1) 객체 생성
객체는 new 연산자를 통해 생성하며, 동적으로 속성 및 메서드를 지정할 수 있다.
ex)
var obj = new Object(); var arr = new Array(); obj.name = "쥬디"; // typeof string obj.id; // typeof undefined |
2) 객체 유효성 체크
object 자료형으로 사용하지만 객체로 만들지 않은 경우는 null이나 undefined 값을 사용할 수 있다. null이나 undefined 값을 가지는 변수는 조건문에서 false로 인식한다.
ex)
var obj = null; (또는 var obj; 또는 var obj = undefined;) if(!obj) { alert("객체가 생성되지 않았습니다."); }; obj.name (X) // Runtime Error 생성되지 않은 객체에는 동적으로 변수가 생성되지 않음 obj = new Object(); obj.name = "쥬디"; if(!obj.id) { alert("ID 속성이 undefined 입니다."); } |
3) 객체 또는 객체속성 삭제
- 암시적으로 생성된 객체나 객체의 속성은 delete연산자를 통해 삭제 할 수 있다.
- var로 선언된 객체는 delete연산자를 통해 삭제되지 않으며, 모든 속성을 따로 delete로 삭제 후 null을 통해 삭제한다.
- window에 생성한 전역 객체는 delete연산자를 사용할 경우 Runtime Error를 발생한다. 즉 브라우저에서 구현된 내장객체의 속성은 삭제가 불가능하다.
- 배열 객체의 인덱스도 삭제가 가능하다.
ex)
var person = new Object(); delete person; (X) // 삭제되지 않음 person = null; // null 처리하면 된다. |
person = new Object(); person.name = "쥬디"; person.id = 111111; delete person; //암시적으로 생성된 객체는 삭제됨. //검증 for(var attr in person) { alert("attribute :: "+attr); } |
window.person = new Object(); delete window.person; (X) // Runtime Error |
var person = new Object(); person.name = "쥬디"; person.id = 111111; delete person.id; //검증 for(var attr in person) { alert("attribute :: "+attr); } |
var arr = new Array(); arr.push(11); arr.push(22); delete arr[0]; //검증 alert(arr.length); // 결과는 2로 delete한 arr[0]은 undefined 임에 주의한다. alert(arr[0]); |
'Develop > JavaScript' 카테고리의 다른 글
JavaScript Object Notation (JSON) (0) | 2018.02.20 |
---|---|
atom 에디터 단축키 모음 (0) | 2018.02.20 |
JavaScript 정규표현식 (0) | 2018.02.20 |
클로저 (Closure) (0) | 2018.02.20 |
arguments 객체 (0) | 2018.02.20 |