티스토리 뷰

객체 (Object)

 

const superman = {

    name : 'clark',

    age : 33,

}

 

객체는 중괄호로 작성하고

으로 구성된 프로퍼티가 들어감

프로퍼티는 ,로 구분함

마지막 ,는 필요없지만 있는게 수정, 삭제, 이동에 용이

 

 

접근

superman.name // 'clark'

.을 사용

superman['age'] //33

[]대괄호 사용

 

추가

superman.gender = 'male';

 

> 접근과 같이 .을 사용

superman['hairColor'] = 'black';

 

> 접근과 같이 []대괄호 사용

 

삭제

delete superman.hairColor;

>delete를 사용 삭제하고 싶은 프로퍼티 앞에 붙여줌

 

 

 

단축 프로퍼티

 

const name = 'clark';

const age = 33;

 

const superman = {

    name : name,

    age : age,

    gender : 'male',

}

이렇게 코드가 있을 때

 

const name = 'clark';

const age = 33;

 

const superman = {

    name, // name : name

    age, // age : age

    gender : 'male',

}

 

이렇게 적어도 동일하다.

 

 

 

프로퍼티 존재 여부 확인

 

존재하지 않는 프로퍼티에 접근하면 에러가 나지 않고 undefined가 뜸

 

그럴때는 in연산자를 사용하면 쉽게 확인 가능하다

'birthDay' in superman; > key + in + Object

// false

 

'age' in superman;

// true

 

in연산자를 사용할 때

>어떤 값이 넘어올 지 확신 할 수 없을 때 사용

(예 : 함수의 인자를 받을 때, API 통신을 통해 데이터를 받을 때 )

 

 

 

for ... in 반복문

객체를 순회하면서 값을 얻어올 수 있음

 

for(let key in superman){ 이름 맘대로 할수 있음 a, b도 가능

    console.log(key)

    console.log(superman[key])

}

 

+이렇게 써도 되는 듯

 

for(key in superman){

    console.log(key)

    console.log(superman[key])

}

 

 

 

 

const superman = {

    name : 'clark',

    age : 33,

}

 

for(x in superman){

    console.log(x)

}

> "name"

> "age"

이렇게 적으면 superman이 가진 key 값들을 찍어줌

 

for(x in superman){

    console.log(superman[x])

}

> "clark"

> 33

이렇게 적으면 superman의 key값에 대한 프로퍼티를 찍어줌

 

728x90
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/07   »
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
글 보관함