JavaScript에서 객체를 생성하는 가능한 방법은 무엇입니까?

2227 단어 es6javascriptobject
자바스크립트에서 객체를 생성하는 방법은 아래와 같이 여러 가지가 있습니다.

객체 생성자:

빈 객체를 만드는 가장 간단한 방법은 Object 생성자를 사용하는 것입니다. 현재 이 접근 방식은 권장되지 않습니다.
var object = new Object();
객체의 생성 방법:

Object의 create 메소드는 프로토타입 객체를 매개변수로 전달하여 새 객체를 생성합니다.
var object = Object.create(null);
객체 리터럴 구문:

객체 리터럴 구문은 null을 매개변수로 전달할 때 create 메소드와 동일합니다.
var object = {};
함수 생성자:

함수를 생성하고 new 연산자를 적용하여 객체 인스턴스를 생성합니다.

function Person(name){
   var object = {};
   object.name=name;
   object.age=21;
   return object;
}
var object = new Person("Ngan Khong");


프로토타입이 있는 함수 생성자:

이것은 함수 생성자와 유사하지만 속성 및 메서드에 대해 프로토타입을 사용합니다.

function Person(){}
Person.prototype.name = "Ngan Khong";
var object = new Person();


이것은 함수 프로토타입이 있는 객체 생성 메소드로 생성된 인스턴스와 인스턴스 및 매개변수를 인수로 사용하여 해당 함수를 호출하는 것과 같습니다.

function func {};

new func(x, y, z);
(OR)

// Create a new instance using function prototype.
var newInstance = Object.create(func.prototype)

// Call the function
var result = func.call(newInstance, x, y, z),

// If the result is a non-null object then use it otherwise just use the new instance.
console.log(result && typeof result === 'object' ? result : newInstance);


ES6 클래스 구문:

ES6에는 객체를 생성하는 클래스 기능이 도입되었습니다.

class Person {
   constructor(name) {
      this.name = name;
   }
}

var object = new Person("Ngan Khong");


싱글톤 패턴:

Singleton은 한 번만 인스턴스화할 수 있는 개체입니다. 생성자에 대한 반복된 호출은 동일한 인스턴스를 반환하고 이러한 방식으로 여러 인스턴스를 실수로 생성하지 않도록 할 수 있습니다.

var object = new function(){
   this.name = "Ngan Khong";
}


리소스: https://github.com/sudheerj/javascript-interview-questions#what-are-the-possible-ways-to-create-objects-in-javascript

좋은 웹페이지 즐겨찾기