• 객체의 기초 1.객체 리터럴

    2022. 1. 12.

    by. 늅

    객체

    • 객체는 프로퍼티의 집합이며 프로퍼티는 으로 구성된다.
    • 프로퍼티 값이 함수일 경우, 일반 함수와 구분하기 위해 메서드(method)라고 부른다.
    var card = {
    	card1: 10, // 프로퍼티
    	card2: 20  // 프로퍼티
    }
    // card1, card2 : 프로퍼티 이름
    // 10, 20 : 키
    

     

    객체 리터럴

    객체 리터럴은 객체를 생성하는 방법중에 하나이고, 가장 간단하다.

    위 코드에서 {...}이 부분이 객체 리터럴이다.

     

    프로퍼티 접근

    프로퍼티의 값을 읽거나 쓸때는 마침표(.) 연산자 또는 대괄호[] 연산자를 사용한다.

    card.card1 //10
    card['card2'] //20
    // 대괄호를 써서 접근할 경우에는 ''안에 감싸주어야 한다.
    // 그렇지 않으면 card2란 변수의 값으로 인식하기 때문이다.
    

     

    프로퍼티 값 갱신, 생성, 삭제

    • 갱신

    이미 존재하는 프로퍼티의 값을 수정할 수 있다.

    card.card1 = 100 
    card.card1 // 100
    
    
    • 생성

    존재하지 않는 프로퍼티의 값을 할당하면 프로퍼티가 생성된다.

    card.card3 = 200
    card.card3 // 200
    
    • 삭제

    delete연산자를 사용하여 프로퍼티를 삭제할 수 있다.

    delete card.card3; 
    

     

    in 연산자로 프로퍼티가 있는지 확인하기

    in 연산자를 사용하면 객체에 특정 프로퍼티가 있는지 확인이 가능하다.

    console.log('card1' in card); // true
    console.log('card100' in card); // false
    

     

    참조 타입

    원시 타입과는 다르게 참조 타입은 값을 변수에 넣어주는 것이 아니라 값을 참조하는 것

    var objA = {
    	value: 50
    }
    
    var objB = objA;
    
    console.log(objA.value); // 50
    console.log(objB.value); // 50
    
    objB.value = 100;
    
    console.log(objB.value); // 100
    console.log(objA.value); // 100
    

    위와 같이 objA 변수와 objB 변수가 동일한 객체를 가르키는 참조값을 가지게 되어 같은 값을 출력하게 된다.

    'Study > JavaScript' 카테고리의 다른 글

    [JavaScript] 객체의 기초 2.생성자  (0) 2022.01.12
    [JavaScript] 함수의 기초  (0) 2022.01.12
    [JavaScript] 데이터 타입  (0) 2022.01.12
    [JavaScript] 변수  (0) 2022.01.12
    [JavaScript] Prototype 이해하기  (0) 2022.01.12

    댓글