Front-End/JavaScript

JavaScript 오브젝트

코드깎는머슴 2024. 2. 23. 13:18
728x90
반응형

오브젝트(Object)


    - 키(Key)와 값(Value)으로 이루어진 쌍(Pair)의 집합을 가지는 객체
    - 오브젝트의 작성 형태는 JSON(JavaScript Object Notation) Object의 형태와 같다
    - 키와 값은 콜론(:)으로 구분하고, 이러한 키와 값으로 이루어진 쌍은 쉼표(,)로 구분하여 여러개 작성할 수 잇다.
    - 오브젝트가 가지는 쌍들에는 순서가 없음으로 인덱스를 통한 접근이 불가
    - 오브젝트에 키를 통해 값에 접근할 수 있고, 하나의 오브젝트가 가지는 동일한 계층의 키는 고유해야 한다
    - 오브젝트가 가지는 키는 반드시 문자열이어야 하고 값의 타입에는 제한이 없다

let [이름] ={
        [키 1] : [값 1],
    [키 2] : [값 2],
    [키 3] : [값 3],
    ...
};


가령, 국가 코드별 한국어 이름을 가지는 오브젝트의 구조는 아래와 같이 작성할 수 있다.

let countryNames = {
        kr : '대한민국'
nara2 : '나라이름2'
nara3 : '나라이름3'
};


키 이름을 통해 오브젝트가 가지는 값에 접근하기 위해서는 오브젝트에 대괄호([]) 혹은 멤버 접근 연산(.)을 사용할 수 있다.       

console.log(countryNames['kr'])  // '대한민국'
console.log(countryNames.kr)  // '대한민국'


대괄호를 통해 값에 접근할 때에는 키 이름을 문자열로 취급해야 한다.
멤버 접근을 통해 값에 접근할 때는 키 이름을 문자열로 취급하면 안된다

쌍 추가 및 값 변경

오브젝트에 이미 존재하는 쌍의 값을 변경핟거나, 존재하지 않는 쌍을 추가하기 위해 아래와 같이 작성할 수 잇따

[오브젝트].[키] = [새로운 값];
[오브젝트].[[키 문자열]] = [새로운 값];


이미 존재하는 쌍의 값을 변경하거나, 존재하지 않는 쌍을 추가하는 방식이 같다.       

countryNames.['kr'] = '한국'
countryNames.['nara4'] = '미국'



쌍 삭제

존재하는 쌍을 삭제하기 위해 아래와 같이 작성할 수 있다.

delete [오브젝트].[키];

delete [오브젝트].[[키 문자열]];






728x90
반응형