JavaScript에 대하여 - 객체리터럴

유니·2021년 12월 5일

Object

JavaScript는 객체 기반 프로그래밍 언어이고 구성하는 모든 것이 객체이다. 또한 원시 값을 제외한 나머지 값(함수, 배열, 정규표현식 등..)은 모두 객체이다.

객체는 0개 이상의 프로퍼티로 구성된 집단이다.

프로퍼티 : Key : Value 로 이루어진 한쌍을 말한다.
프로퍼티의 key는 모든 문자율 혹슨 심벌값을 사용할 수 있다. ( 단 네이밍시 연산자와같은 문자를 사용할 경우 따옴표로 묶어줘야한다.)
프로퍼티의 value에는 모든 값이 될 수 있는데 함수의 경우 일반 함수와 구분하기위해 Method라고 부른다.

var person = {
  name : 'Min',
  helloWorld : function() {
    console.log(`Hello World! I'm Mr ${this.name}!`);
  }
};

person은 객체
name : 'Min'는 프로퍼티
hellowWorld : function() {...} 은 메소드라 볼 수 있다.

또한 객체는 0개이상의 프로퍼티로 구성된 집단인 만큼 프로퍼티가 없어도 선언이 가능하다. 이때는 빈 객체가 생성된다.

var empty = {};

프로퍼티에 접근하는 방법으로는 크게 두가지가 있다.

  1. 마침표 표기법
  2. 대괄호 표기법

위의 객체 person에서 name 에 접근하고싶으면
person.name 혹은 person['name'] 으로 접근하면 된다.

대괄호 표기법 같은 경우 접근하려는 프로퍼티 키에 반드시 따옴표로 감싸줘야 한다. 감싸주지않으면 식별자 name으로 생각해버린다.

프로퍼티 값을 갱신하려면 key에 새로 할당해주면된다.

person.name = 'Kim';

존재하지않는 새로인 key와 value를 생성하려면 객체에 접근하여 새로운 key와 value를 할당해주면된다.

person.age = 20;

원치않는 프로퍼티를 삭제하고싶으면 delete 를 사용하면된다.

delete person.age;

단 없는 프로퍼티를 삭제하려하면 당연하게도 삭제할 수 없는데 자바스크립트는 그에 대한 에러를 발생시키지않는다.

profile
이제 그만 노력이란걸 해보자

0개의 댓글