Computer >> 컴퓨터 >  >> 프로그래밍 >> JavaScript

JavaScript에서 new Object()와 객체 리터럴({}) 표기법의 차이점

JavaScript에서 객체를 생성하는 대표적인 방법은 두 가지입니다. 하나는 new Object() 생성자를 사용하는 방법이고, 다른 하나는 객체 리터럴({}) 표기법을 사용하는 방법입니다. 결론부터 말씀드리면, 두 방식 모두 본질적으로 동일한 작업, 즉 객체를 초기화하는 역할을 합니다.

객체 리터럴 표기법 예제

let a = {
    name: 'Ayush'
}

위 코드는 아래의 코드와 완전히 동일하게 동작합니다.

let a = new Object();
a.name = 'Ayush';

또는 다음과 같이 빈 객체 리터럴을 먼저 생성한 후 속성을 추가하는 방식으로 작성해도 결과는 같습니다.

let a = {};
a.name = 'Ayush';

그렇다면 어떤 방식을 사용해야 할까?

두 표기법의 실행 결과는 같지만, 실무에서는 객체 리터럴 표기법을 사용하는 것이 일반적으로 권장됩니다. 그 이유는 다음과 같습니다.

  • 간결함과 가독성: 중괄호만으로 객체를 즉시 생성하고 속성까지 한 번에 정의할 수 있어 코드가 짧고 읽기 쉽습니다.
  • 성능: new Object()는 생성자 함수 호출 과정이 추가되므로, 리터럴 방식이 미세하게 더 빠릅니다.
  • 안정성: 리터럴 방식은 전역 Object 객체가 재정의(오버라이드)된 환경에서도 의도대로 동작합니다.

따라서 특별한 이유가 없다면 {} 객체 리터럴 표기법을 사용하는 것이 더 깔끔하고 효율적인 선택입니다.