[TIL 11] 객체 Object
7120 단어 JavaScriptobjectjs객체JavaScript
객체 Object
- 객체형은 원시형과 달리 다양한 데이터를 담을 수 있다.
- 키로 구분된 데이터 집합이나 복잡한 개체(entity)를 저장할 수 있다.
- 객체는 몇 가지 특수한 기능을 가진 연관 배열(associative array)이다.
- 객체는 중괄호
{…}
를 이용해 만들 수 있다.
- 중괄호 안에는
‘키(key): 값(value)’ 쌍으로 구성된 프로퍼티(property)
를 여러 개 넣을 수 있는데, 키엔 문자형, 값엔 모든 자료형이 허용된다.
let user = { // 객체
firstName : 'yezo', // key : "firstName", value : "yezo"
lastName : 'Cha',
email : '[email protected]',
city : 'Seoul',
};
{…}
를 이용해 만들 수 있다.‘키(key): 값(value)’ 쌍으로 구성된 프로퍼티(property)
를 여러 개 넣을 수 있는데, 키엔 문자형, 값엔 모든 자료형이 허용된다.let user = { // 객체
firstName : 'yezo', // key : "firstName", value : "yezo"
lastName : 'Cha',
email : '[email protected]',
city : 'Seoul',
};
! 상수 객체는 수정 될 수 있다.
const
는 user의 값을 고정하지만, 그 내용은 고정하지 않는다.const
는 user=...를 전체적으로 설정하려고 할 때만 오류가 발생한다.
const user = {
name : 'dingding'
};
user.name = 'yezo'; // 오류 아님.
console.log(user.name); // yezo
프로퍼티 접근하기
- 점 표기법(Dot notation) :
obj.property
객체 다음에.
을 넣은 뒤key
를 넣어주면 객체의 값을 나타낼 수 있다.
user.firstName; // 'yezo'
- 대괄호 표기법(Bracket notation) :
obj['property']
객체 다음에[]
을 넣고 그 안에key
를문자열 형태
로 넣어주면 객체의 값을 나타낼 수 있다.
대괄호 표기법을 사용하면 변수에서 키를 가져올 수 있다.
user['lastName']; // 'Cha'
객체와 연산자
- 프로퍼티를 삭제하고 싶을 때 :
delete obj.prop
- 해당 key를 가진 프로퍼티가 객체 내에 있는지 확인하고자 할 때 :
'key' in obj
- 프로퍼티를 나열할 때 :
for (let key in obj)
객체와 반복문
생성한 객체를 출력하기 위해서는 반복문을 사용한다.
객체의 모든 속성을 출력하기 위해서 for..in
반복문을 사용하자.
let user = {
name: "yezo",
age: 23,
isAdmin: true
};
for (let key in user) {
// 키
console.log( key ); // name, age, isAdmin
// 키에 해당하는 값
console.log( user[key] ); // yezo, 23, true
}
메서드
Object.keys(obj)
: 객체'obj'의 key만 담은 배열을 반환.Object.values(obj)
: 객체의 값만 담은 배열을 반환.Object.entries(obj)
:[key, value]
쌍을 담은 배열을 반환.
let user = {
name: 'yezo',
age: 23
};
console.log(Object.keys(user)) // ["name", "age"]
console.log(Object.values(user)) // ["yezo", 23]
console.log(Object.entries(user)) // [["name", "yezo"], ["age", 23]]
Author And Source
이 문제에 관하여([TIL 11] 객체 Object), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@chayezo/TIL-11-객체-Object저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)