>웹 프론트엔드 >JS 튜토리얼 >JavaScript 객체에서 생성자를 어떻게 생성합니까?

JavaScript 객체에서 생성자를 어떻게 생성합니까?

Barbara Streisand
Barbara Streisand원래의
2024-11-05 18:03:02823검색

How Do You Create Constructors in JavaScript Objects?

JavaScript 객체의 생성자

JavaScript 객체는 생성자를 가질 수 있습니다. 다른 프로그래밍 언어와 달리 JavaScript는 생성자를 정의하기 위해 생성자와 같은 특수 키워드를 사용하지 않습니다. 대신 생성자는 프로토타입을 사용하여 생성됩니다.

프로토타입으로 생성자 생성:

이 접근 방식에서는 생성자 함수가 대문자 이름으로 생성됩니다. 생성자 내에서 객체의 속성은 this 키워드를 사용하여 할당됩니다. 이 생성자를 사용하여 생성된 모든 객체의 속성과 메서드에 액세스하기 위해 프로토타입이 생성됩니다. 프로토타입에는 이 생성자에서 생성된 모든 객체가 상속할 메서드와 속성이 포함될 수 있습니다.

<code class="javascript">function Box(color) // Constructor
{
    this.color = color;
}

Box.prototype.getColor = function()
{
    return this.color;
};</code>

이 예에서 생성자 Box는 매개변수 color를 받아들이고 이를 객체의 color 속성에 할당합니다. Box 생성자의 프로토타입은 객체의 색상 속성을 반환하는 getColor라는 메서드를 정의합니다.

개인 멤버 숨기기:

외부 액세스로부터 속성을 숨기려면 변수는 생성자 함수 내에서 선언할 수 있으며 메서드를 통해서만 액세스할 수 있습니다. 이것은 진정한 전용 멤버는 아니지만 일종의 캡슐화를 제공합니다.

<code class="javascript">function Box(col)
{
   var color = col;

   this.getColor = function()
   {
       return color;
   };
}</code>

이 예에서 color 속성은 생성자 내부에서 변수로 선언되며 생성자 외부에서는 액세스할 수 없습니다. getColor 메소드는 color 속성에 대한 액세스를 제공합니다.

사용법:

생성자를 사용하여 객체를 생성하려면 new 키워드가 사용됩니다. 다음 코드는 생성자의 사용법을 보여줍니다.

<code class="javascript">var blueBox = new Box("blue");
alert(blueBox.getColor()); // will alert blue

var greenBox = new Box("green");
alert(greenBox.getColor()); // will alert green</code>

위 내용은 JavaScript 객체에서 생성자를 어떻게 생성합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.