고슴맨쉬
망치와 공(空)
고슴맨쉬
  • 분류 전체보기 (155)
    • 💡 UXUI (4)
      • UXUI (2)
      • UI (2)
      • UX (0)
    • 🟨 JavaScript (66)
      • 개념 (42)
      • 정리 (2)
      • 문제풀기 (프로그래머스, 코딩애플) (15)
      • 응용하여 자동화or문제해결하기 (2)
      • 기타 (5)
    • ⚛️ React (49)
      • 개념 (27)
      • 개념(Redux) (3)
      • 정리 (4)
      • 문제풀기 (코딩애플: React) (15)
    • 📘 TypeScript (10)
      • 개념 (8)
      • 문제풀기 (코딩애플) (2)
    • 🌐 HTML,CSS (18)
      • 실무에서 자주 발생한 오류들 (10)
      • 뒤늦게 알아서 뼈아픈 유용한 CSS (6)
      • 기타 자주 쓰는 CSS (2)
    • 💻 CS (8)
      • CS (5)
      • 정규표현식 (2)
      • Git,Github (1)

태그

  • CS
  • react
  • state
  • Ajax
  • 코딩애플
  • 삼항연산자
  • JavaScript
  • redux
  • json
  • 프로그래머스
  • 오류
  • object
  • CSS
  • Props
  • useEffect
  • axios
  • UXUI
  • TypeScript
  • class
  • array
전체 방문자
오늘
어제
hELLO · Designed By 정상우.
고슴맨쉬

망치와 공(空)

🟨 JavaScript/개념

[mdn, 드림코딩 외] 객체지향 (3) : 정적 속성과 메소드(static properties and methods)

2022. 5. 4. 12:39

정적 속성과 메소드(static properties and methods)

static 키워드를 붙이면 프로퍼티나 메소드가 인스턴스화되지 않고 클래스 자체에 붙는다.

class goodCoder {
  static codername = 'noran';
  constructor(coderNumber) {
    this.coderNumber = coderNumber;
  }
  
  static printCoder() {
    console.log(goodCoder.codername);
  }
}

const coder1 = new goodCoder(1);
const coder2 = new goodCoder(2);

console.log(coder1.codername); //undefined

위 코드에서 console.log(coder1.codername);은 undefined를 뱉는다. codername이 static method이기 때문이다.

그렇기 때문에 console.log(goodCoder.codername);으로 클래스명으로 붙이면 아래 코드처럼 값을 제대로 뱉는다.

console.log(goodCoder.codername); //noran

언제 사용할까?

오브젝트(들어오는 값)에 상관없이 클래스 내에서 공통적으로 쓸 수 있는 것이라면 static을 쓰면 메모리를 효과적으로 줄일 수 있다.


출처 : 드림코딩 https://www.youtube.com/@dream-coding / MDN https://developer.mozilla.org/ko

저작자표시 비영리 동일조건 (새창열림)

'🟨 JavaScript > 개념' 카테고리의 다른 글

[mdn, 드림코딩 외] 객체지향 (5) : instanceOf 연산자  (0) 2022.05.25
[mdn, 드림코딩 외] 객체지향 (4) : 클래스의 상속 (sub classing)  (0) 2022.05.25
[mdn, 드림코딩 외] 객체지향 (2) : 객체(object)와 getter and setter  (0) 2022.05.04
[mdn, 드림코딩 외] 객체지향 (1) : 클래스(class)  (0) 2022.05.03
[드림코딩 외] 콜백함수 (Callback function)  (0) 2022.04.22
    '🟨 JavaScript/개념' 카테고리의 다른 글
    • [mdn, 드림코딩 외] 객체지향 (5) : instanceOf 연산자
    • [mdn, 드림코딩 외] 객체지향 (4) : 클래스의 상속 (sub classing)
    • [mdn, 드림코딩 외] 객체지향 (2) : 객체(object)와 getter and setter
    • [mdn, 드림코딩 외] 객체지향 (1) : 클래스(class)
    고슴맨쉬
    고슴맨쉬
    부수되 집착하지 않고, 이해하되 머무르지 않기

    티스토리툴바