본문 바로가기
WEB/javascript

객체

by 일상코더 2023. 3. 10.

객체란?

       자바스크립트는 객체(object) 기반의 프로그래밍 언어이며, 자바스크립트를 구성하는 거의 "모든 것"이 객체이다.

      원시 값을 제외한 나머지 값(함수, 배열, 정규 표현식 등)은 모두 객체이다.

       

       원시 타입은 단 하나의 값만 나타내지만 객체 타입(object/reference type)은 다양한

       타입의 값(원시 값 또는 다른 객체)을 하나의 단위로 구성한 복합적인 자료구조data structure이다.

 

        원시 타입의 값

              

                - 변경 불가능한 값(immutable value)

 

        객체 타입의 값

 

                - 변경 가능한 값(mutable value)

 

       

객체는 프로퍼티의 집합

 

객체이 프로퍼티와 메서드

}

 

프로퍼티: 객체의 상태를 나타내는 값(data)

메서드: 프로퍼티(상태 데이터)를 참조하고 조작할 수 있는 동작(behavior)

 

 

자바스트립트에서 제공하는 객체 생성 방법

  • 객체 리터털
  • Object 생성자 함수
  • 생성자 함수
  • Object.create 메서드
  • 클래스(ES6)
var person = {
	name: 'Lee',
    sayHello: function(){
		console.log(`Hello! My name is ${this.name}.`);
	}
}

console.log(typeof person); //object
console.log(person); //{name: "Lee", sayHello:f}
console.lof(person.sayHello()); //Hello! My name is Lee

객체 리터럴은 자바스크립트의 유연함과 강력함을 대표하는 객체 생성 방식이다.

객체를 생성하기 위해서 클래스를 먼저 정의하고 new 연산자와 함께 생성자를 호출할 필요가 없다. 

객체 리터릴에 프로퍼티를 포함시켜 객체를 생성함과 동시에 프로퍼티를 만들 수도 있다

객체를 생성한 이후에 프로퍼티를 동적으로 추가할 수 있다.

 

       

'WEB > javascript' 카테고리의 다른 글

스코프  (2) 2023.03.13
콜백 함수  (0) 2023.03.12
타입 변환과 단축 평가  (0) 2023.03.10
DOM  (0) 2023.03.08
자바스크립트  (0) 2023.03.02

댓글