All'alba vincerò

At dawn, I will win!

Javascript

[JS] 인스턴스 메서드 (Instance Method) / 스태틱 메서드 (Static Method)

나디아 Nadia 2024. 6. 25. 23:32

인스턴스 메서드 (Instance Method)

: 클래스의 인스턴스에서 호출되는 메서드

  • 해당 클래스의 각 인스턴스에 대해 개별적으로 존재
  • 인스턴스의 데이터(속성)를 조작하거나 접근하는 데 사용
  • 클래스의 인스턴스가 생성될 때마다 새로운 메서드가 생성됨
  • 클래스의 인스턴스를 통해 호출
    `참조 변수.메소드 명()`
class MyClass {
    constructor(name) {
        this.name = name;
    }

    greet() {
        console.log(`Hello, my name is ${this.name}`);
    }
}

const obj = new MyClass('Alice');
obj.greet();  // Hello, my name is Alice

 

 

 

스태틱 메서드 (Static Method)

: 클래스 자체에서 호출되는 메서드

  • 객체 생성 없이 호출이 가능한 메소드
  • 클래스의 인스턴스와는 독립적임
  • 유틸리티 함수나 클래스 수준의 작업을 수행하는 데 사용
  • `static` 키워드를 붙여서 만듦
  • 클래스 이름을 통해 직접 호출
    `클래스 명.메소드 명()`
class MyClass {
    static greet() {
        console.log('Hello from static method');
    }
}

MyClass.greet();  // Hello from static method

 

 

 

인스턴스 메서드 (Instance Method) 스태틱 메서드 (Static Method)
클래스의 각 인스턴스에 대해 개별적으로 존재 클래스의 인스턴스와는 독립적
인스턴스의 데이터(속성)를 조작하거나 접근하는 데 사용 유틸리티 함수나 클래스 수준의 작업을 수행하는 데 사용
클래스의 인스턴스를 통해 호출 클래스 이름을 통해 직접 호출
메소드 내에서 인스턴스 변수 사용⭕ 메소드 내에서 인스턴스 변수 사용❌
객체를 생성해야 인스턴스 메소드를 호출 가능 객체를 생성하지 않고도 호출 가능
Exam ex = new Exam();
ex.example = "예시";
Math.random();

 

 


 

 

Classes - JavaScript | MDN

Class는 객체를 생성하기 위한 템플릿입니다. 클래스는 데이터와 이를 조작하는 코드를 하나로 추상화합니다. JavaScript에서 클래스는 프로토타입을 이용해서 만들어졌지만 ES5의 클래스 의미와는

developer.mozilla.org

 

 

static - JavaScript | MDN

static 키워드는 클래스의 정적 메서드를 정의합니다.

developer.mozilla.org

 

 

정적 메서드와 정적 프로퍼티

 

ko.javascript.info