JavaScript에서는 객체를 생성하는 방법이 여러 가지가 있습니다. 각 방법에는 고유한 장점과 사용 사례가 있습니다. 클로저, 프로토타입, ES6 클래스라는 세 가지 일반적인 방법을 예제와 함께 살펴보겠습니다.
클로저는 자신이 생성된 환경을 기억하는 기능입니다. 이를 통해 함수 내에서 데이터를 캡슐화할 수 있습니다.
function createPerson(name) { let age = 0; return { getAge: function() { return age; }, growUp: function() { age++; } }; } const person1 = createPerson("Alice"); console.log(person1.getAge()); // Output: 0 person1.growUp(); console.log(person1.getAge()); // Output: 1
프로토타입을 사용하면 공유 속성과 메서드를 사용하여 객체를 만들 수 있습니다.
function Person(name) { this.name = name; } Person.prototype.getAge = function() { return this.age || 0; }; Person.prototype.growUp = function() { if (!this.age) { this.age = 1; } else { this.age++; } }; const person2 = new Person("Bob"); console.log(person2.getAge()); // Output: 0 person2.growUp(); console.log(person2.getAge()); // Output: 1
ES6 클래스는 보다 전통적인 클래스 기반 구문을 제공하므로 더 쉽게 이해하고 사용할 수 있습니다.
class Person { constructor(name) { this.name = name; this.age = 0; } getAge() { return this.age; } growUp() { this.age++; } } const person3 = new Person("Charlie"); console.log(person3.getAge()); // Output: 0 person3.growUp(); console.log(person3.getAge()); // Output: 1
JavaScript에서 객체를 생성하는 세 가지 방법인 클로저, 프로토타입, ES6 클래스를 살펴보았습니다. 각 방법에는 고유한 장점과 사용 사례가 있습니다.
위 내용은 JavaScript로 객체 생성: 클로저, 프로토타입, ESlases의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!