[TIL 11] 객체 Object

객체 Object

  • 객체형은 원시형과 달리 다양한 데이터를 담을 수 있다.
  • 키로 구분된 데이터 집합이나 복잡한 개체(entity)를 저장할 수 있다.
  • 객체는 몇 가지 특수한 기능을 가진 연관 배열(associative array)이다.
  • 객체는 중괄호 {…}를 이용해 만들 수 있다.
  • 중괄호 안에는 ‘키(key): 값(value)’ 쌍으로 구성된 프로퍼티(property) 를 여러 개 넣을 수 있는데, 문자형, 모든 자료형이 허용된다.
let user = {				// 객체
  firstName : 'yezo',			// key : "firstName", value : "yezo"
  lastName : 'Cha',
  email : '[email protected]',
  city : 'Seoul',
};

! 상수 객체는 수정 될 수 있다.

  • constuser의 값을 고정하지만, 그 내용은 고정하지 않는다.
  • constuser=...전체적으로 설정하려고 할 때만 오류가 발생한다.
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]]

좋은 웹페이지 즐겨찾기