자바스크립트 객체 개요

2941 단어
JavaScript에서 기본 개체 클래스를 만드는 방법에 대한 개요입니다.

JS 개체



JavaScript는 객체 지향 프로그래밍 언어가 아닙니다. 그러나 JavaScript에서 다른 OO 언어와 유사하게 작동하는 '객체'를 만들 수 있습니다.

MDN Document에 따라 개체는 속성 모음입니다.

JavaScript는 객체를 특정 항목이 어떻게 동작해야 하는지에 대한 프레임워크를 제공하는 데이터 유형으로 사용합니다. 인스턴스 메소드는 특정 인스턴스의 특성을 정의하는 데 사용됩니다.

통사론




    class Dog {
        constructor(name, breed, age, owner){
            this.name = name;
            this.breed = breed;
            this.age = age;
            this.owner = owner;
        }
    }


생성자 방법



모든 클래스는 생성자 메서드를 사용하여 개체의 새 인스턴스를 인스턴스화합니다. 위의 예에서 새 name 개체를 만들 때 breed , age , ownerDog 를 전달합니다. 우리는 thisDog 인스턴스를 전달된 변수와 동일하게 설정합니다. 키워드 thisDog의 특정 인스턴스를 참조합니다.

위의 내용은 작성 방법일 뿐입니다. Dog의 인스턴스가 아직 생성되지 않았습니다.

개체의 속성과 주어진 인수를 더 잘 이해하기 위해 대신 아래에 따라 생성자를 설정할 수 있습니다. dogName , dogBreed , ... 는 전달된 인수이고 .name , breed 는 각 Dog 인스턴스가 얻을 속성입니다.

    class Dog {
        constructor(dogName, dogBreed, dogAge, dogOwner){
            this.name = dogName;
            this.breed = dogBreed;
            this.age = dogAge;
            this.owner = dogOwner;
        }
    }


개체 만들기


new 키워드와 클래스 이름을 사용하여 새 개체를 만듭니다. 나중에 수정할 때 사용할 수 있도록 새 개체를 변수에 저장하는 것을 선호합니다.

dog1 = new Dog("Fluffy", "Golden Retriever", "4", "Jane Smith") 
// Dog {name: 'Fluffy', breed: 'Golden Retriever', age: '4', owner: 'Jane Smith'}


개체의 데이터 검색



변수 dog1 를 사용하여 해당 속성을 호출하여 해당 변수의 데이터에 액세스할 수 있습니다.

dog1.name
// 'Fluffy'

dog1.breed
// 'Golden Retriever'

dog1.age
// '4'


인스턴스 메서드로 개체 동작 제공



인스턴스 메소드는 호출된 특정Dog 인스턴스에 대해 작업을 수행합니다.

아래 예에서 bark라는 메서드는 Dog의 각 인스턴스가 호출될 때 "워프"하는 기능을 제공합니다. 마찬가지로 ageUp 메서드는 특정 강아지의 나이를 1 증가시키고 새 나이를 반환합니다.

    class Dog {
        constructor(name, breed, age, owner){
          ...
        }

       bark(){
           return `${this.name} the dog says woof!`;
       }
       ageUp(){
           this.age += 1;
           return this.age;
       }
    }

dog1.bark()
// "Fluffy the dog says woof!"

dog1.ageUp()
// 5

좋은 웹페이지 즐겨찾기