ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [JavaScript] 생성자
    개발/JavaScript 2022. 9. 11. 16:02

    객체를 생성하는 함수를 생성자 함수라고 부릅니다. 다른 언어에서는 class가 있즈민 자바스크립트에서는 없기 때문에 생성자 함수를 이용하여 그 역할을 대신 합니다. 

     

    생성자 함수의 필요성

    1. 여러개의 동일한 프로퍼티를 가지는 객체를 생성하기 위해서 필요.
    2. Prototype을 이용하여 메모리 절감을 위해서 필요.

     

    생성자 함수의 형태

    1. 생성자명 : 대문자로 시작 (일반 함수와 구별을 하기 위한 암묵적인 규칙? 관례)
    2. 내부의 식별자 선언(var 식별자) 없음
    3. 내부의 메소스 선언(var 식별자 = function (){}) 없음
    4. "this.프로퍼티"를 통해서 프로퍼티 명시만 가능

     

    생성자 함수의 사용법

    1. new 키워드를 통하여 생성자 함수를 호출한다.
      1. ex) var 생성자 = new 생성자명();
    2. 생성자 함수 생성 과정 분석
      1. new 키워드는 빈 객체 {}를 생성 합니다.
      2. 생성자 함수는 빈 객체에 생성 할 프로퍼티를 정의합니다.
      3. 함수의 인수들을 프로퍼티에 할당합니다.
      4. 생성된 Student 객체를 student에 할당합니다.

     

    생성자 함수에서 사용되는 함수 정의

    1. 생성자 내부에 함수 정의

    function Student(_name, _math, _eng) {
                this.name = _name,
                this.math = _math,
                this.eng  = _eng,
                this.score = function allinfo() {
                    return "Student name :" + 
     				this.name + "score math : " + this.math + "eng : " + this.eng;
                }
    }
    
    //출력 결과 : Student name :영수score math : 93eng : 11

     

    2. Prototype을 사용한 함수 정의

    function Student(_name, _math, _eng) {
        this.name = _name,
        this.math = _math,
        this.eng  = _eng
    }
            
    Student.prototype.score = function allinfo() {
        return "Student name :" + this.name + 
        "score math : " + this.math + "eng : " + this.eng;
    }
    
    // 출력 결과 : Student name :영수score math : 93eng : 11

     

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

    [JavaScript] null 병합 할당 연산자  (0) 2023.03.19
    [JavaScript] es6 문법 정리  (2) 2022.09.14
    [JavaScript] addEventListener  (0) 2022.08.26
    [JavaScript] RegExp 객체  (0) 2022.08.15
    [JavaScript] 정규표현식 모음  (0) 2022.08.05

    댓글

Designed by Tistory.