> 웹 프론트엔드 > JS 튜토리얼 > ES6의 클래스와 객체에 대한 설명과 적용

ES6의 클래스와 객체에 대한 설명과 적용

零下一度
풀어 주다: 2017-06-25 09:26:50
원래의
1363명이 탐색했습니다.

1. 기본 정의 및 생성된 예제 

{  // 基本定义和生成实例  class Parent{
    constructor(name='mukewang'){//构造器,初始化一些参数      this.name=name;
    }
  }
  let v_parent=new Parent('v');
  console.log('构造函数和实例',v_parent);
}
로그인 후 복사

2. 상속 (확장을 통한 상위 클래스의 직접 하위 클래스 상속)

{  // 继承  class Parent{
    constructor(name='mukewang'){      this.name=name;
    }
  }

  class Child extends Parent{

  }

  console.log('继承',new Child());
}
로그인 후 복사

 상속 (참고: 당신은 super()를 사용하여 자신의 속성을 사용할 수 있으며 super는 첫 번째 줄에 배치해야 합니다)

{  // 继承传递参数  class Parent{
    constructor(name='mukewang'){      this.name=name;
    }
  }

  class Child extends Parent{
    constructor(name='child'){
      super(name);      this.type='child';
    }
  }

  console.log('继承传递参数',new Child('hello'));
}
로그인 후 복사

  클래스의 getter 및 setter

{  // getter,setter  class Parent{
    constructor(name='mukewang'){      this.name=name;
    }
  //注意下面的longName是属性而不是方法
    get longName(){      return 'mk'+this.name
    }

    set longName(value){      this.name=value;
    }
  }

  let v=new Parent();
  console.log('getter',v.longName);
  v.longName='hello';
  console.log('setter',v.longName);
}
로그인 후 복사

  정적 메서드 및 정적 속성

{  // 静态方法 使用static声明 注意:静态方法只能通过类来调用,而不能通过类的实例进行调用,相当于es5中的私有方法  class Parent{
    constructor(name='mukewang'){      this.name=name;
    }

    static tell(){
      console.log('tell');
    }
  }

  Parent.tell();

}

{  // 静态属性 直接类名通过.来声明一个静态属性  class Parent{
    constructor(name='mukewang'){      this.name=name;
    }

    static tell(){
      console.log('tell');
    }
  }

  Parent.type='test';

  console.log('静态属性',Parent.type);


}
로그인 후 복사

위 내용은 ES6의 클래스와 객체에 대한 설명과 적용의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿