3.2 자바스크립트 참조 타입(객체)

vencott·2021년 6월 2일
Object
Array
Function
Regular Express

자바스크립트의 거의 모든 것은 객체이다

자바스크립트에서 객체는 이름(key) : 값(value) 형태의 프로퍼티들을 저장하는 컨테이너이다

3.2.1 객체 생성

3.2.1.1 Object(): 내장 생성자 함수

var foo = new Object();
    
foo.name = 'foo';
foo.age = 30;
foo.gender = 'male';
    
console.log(typeof foo);
console.log(foo);

3.2.1.2 객체 리터럴

var foo2 = {
   name: 'foo',
   age: 30,
   gender: 'male'
};
console.log(typeof foo2);
console.log(foo2);

3.2.1.3 생성자 함수

나중에

3.2.2 객체 프로퍼티 읽기/쓰기/갱신

객체의 프로퍼티에 접근하는 2가지 방법

  1. [] 표기법
  2. . 표기법
var foo = {
        name: "foo",
        major: "computer science"
    };
    
    console.log(foo.name); // . 표기법
    console.log(foo['name']); // [] 표기법

3.2.3 for in문과 객체 프로퍼티 출력

객체의 모든 프로퍼티에 대해 루프를 수행할 때 유용하다

var foo = {
    name: 'foo',
    age: 30,
    gender: 'male'
};

var key;
for (key in foo) {
    console.log("key : " + key + "  value : " + foo[key]); // 대괄호 표기법으로 접근
}

3.2.4 객체 프로퍼티 삭제

var foo = {
    name: 'foo',
    age: 30,
    gender: 'male'
};

console.log(foo.name); // foo
delete foo.name;
console.log(foo.name); // undefined - javascript에선 존재하지 않는 프로퍼티에 접근할 경우 undefined 반환

delete foo;
console.log(foo.name); // delete 함수는 객체의 프로퍼티를 삭제할 뿐, 객체를 삭제하진 못한다.

출처: 송형주, 고현준 저, 『인사이드 자바스크립트』, 한빛미디어(2014)

profile
Backend Developer

0개의 댓글