[TIL] 내배캠 사전캠프 5일차

yeols·2023년 9월 1일
0

[TIL]

목록 보기
4/72

객체(Object)

자바스크립트는 객체(object 기반의 프로그래밍 언어이다.
자바스크립트를 구성하는 거의 모든 것이 객체이다.
객체 타입 object / reference type은 다양한 타입의 값을 하나의 단위로 구성한 복합적인 자료구조이다.

객체는 0개 이상의 프로퍼티로 구성된 집합이며, 프로퍼티는 keyvalue로 구성된다.

let person = {
 //key   value
  name: 'Gwon', //한 쌍을 프로퍼티라고 한다.
  age: 30
};

자바스크립트에서 사용할 수 있는 모든 값은 프로퍼티 값이 될 수 있다. 함수도 프로퍼티 값으로 사용할 수 있다.
프로퍼티 값이 함수일 경우, 일반 함수와 구분하기위해 메서드(method)라 부른다.

let counter = {
  num: 0,  // 프로퍼티
  increase: function (){ // 메서드(method)
    this.num++;
  }
};

프로퍼티와 메서드의 역할

  • 프로퍼티: 객체의 상태를 나타내는 값(data)
  • 메서드: 프로퍼티(상태 데이터)를 참조하고 조작할 수 있는 동작

객체 리터럴에 의한 객체 생성

자바스크립트는 프로토타입 기반 객체지향 언어로서 클래스 기반 객체지향 언어와는 달리 다양한 객체 생성 방법을 지원함.

  • 객체 리터럴
  • Object 생성자 함수
  • 생성자 함수
  • Object.create 메서드
  • 클래스(ES6)

객체 생성 방법 중에서 가장 일반적이고 간단한 방법은 객체 리터럴을 사용하는 방법이다.
객체 리터럴은 중괄호 내에 0개 이상의 프로퍼티를 정의하며 변수에 할당되는 시점에 자바스크립트 엔진은 객체 리터럴을 해석해 객체를 생성한다.

let person = {
  name: 'Gwon',
  sayHello: function () {
    console.log(`Hello! My name is ${this.name}.`);
	}
};

console.log(typeof person); // object
console.log(person); //{name: 'Gwon', sayHello: ƒ 

중괄호 내에 프로퍼티를 정의하지 않으면 빈 객체가 생성된다.

let empty = {}; // 빈 객체
console.log(typeof empty); // object

프로퍼티

객체는 프로퍼티의 집합이며, 프로퍼티는 키와 값으로 구성된다.

var person = {
  // 프로퍼티 키는 name, 프로퍼티 값은 'Gwon'
  name: 'Gwon',
  // 프로퍼티 키는 age, 프로퍼티 값은 20
  age: 20
};

프로퍼티를 나열할땐 콤마(,)로 구분한다. 일반적으로 마지막 프로퍼티 뒤에는 쉼표를 사용하지 않으나 사용해도 상관없다.
프로퍼티 키와 프로퍼티 값으로 사용할 수 있는 값은 다음과 같다.

  • 프로퍼티 키: 빈 문자열을 포함하는 모든 문자열 또는 심벌 값
  • 프로퍼티 값: 자바스크립트에서 사용할 수 있는 모든 값

객체에 대해 모든게 중요하지만 가장 중요하다고 생각한 부분들을 정리했다.
다시 객체를 복습하는날 위에 나열된 부분을 제외하고 정리해보자.
지금까지 두서없이 공부를 했는데 다음주부터는 계획을 세우고 진행해보려한다.
잘 될진 모르겠지만 세운 계획을 최대한 맞춰보려 노력해야겠다.

profile
흠..

0개의 댓글

관련 채용 정보