JAVASCRIPT 정적 객체 정적 메소드 및 정적 특성을 달성

다만, 자바 스크립트가 정적과 같은 키워드를 제공하지 않는 정적 클래스와 클래스를 지정하는 정적 키워드를 사용하는 클래스를 만들 때 언어의 자바 스크립트 객체 지향 기능이 약한 다른 객체 지향 언어 인 자바 스크립트는 오직하여 "정적"특성을해야 다음은 몇 가지 "영리하지만 쓸모없는".

코드 구현 정적 두가지 방법이 포함 / 클래스의 속성이 정적 특성 및 정적 메소드 정적 메소드와 다른 특성 인 비 정적 클래스 코드 기술은 코드 코멘트 라인마다 작성된 반복하지.

JAVASCRIPT :

 

  1. / ****************************************
  2. * 방법 1
  3. * 클래스, 메소드, 프로퍼티 정적 유형
  4. * 당신은 인스턴스를 만들 수 없습니다
  5. ***************************************** /
  6. var에   시간 = {  
  7.     오늘 : '2009년 3월 8일' ,  
  8.     날씨 : '비' ,  
  9.     표시 : 함수 ( ) {    
  10.           경고 ( '오늘은'   + . 오늘 ) ;  
  11.       }
  12. } ;
  13.  
  14. // 정적 객체 인스턴스를 생성 할 필요없이 직접적으로 사용될 수있다
  15. 경고 ( '때문이다'   + 시간. 날씨   + '오늘.' ) ;  
  16. 시각. ( ) ;
  17.  
  18. 정적 클래스는 인스턴스를 생성 할 수 없기 때문에 // 다음 코드는 잘못된 것입니다
  19. // var에 t = 새 시간 ();
  20. //t.show ();
  21.  
  22. / ****************************************
  23. * 두 번째 방법
  24. * 일반 오브젝트는 정적 비 정적 속성, 방법 모두 가지고
  25. * 인스턴스화 할 수
  26. * 참고 :
  27. * 1. 정적 메소드 / 속성 액세스 클래스 이름을 사용하여
  28. 액세스 인스턴스 명을 사용 * 2. 비 정적 메소드 / 속성
  29. ***************************************** /
  30. 함수   사람 ( 이름 ) {  
  31.       // 비 정적 특성
  32.       . 이름   = 이름 ;  
  33.       // 비 정적 메소드
  34.       .   = 함수 ( ) {    
  35.           경고 ( '내 이름은'   + . 이름 + '.' ) ;      
  36.       }
  37. }
  38. // 모든 사람에게 입을 정적 속성을 추가 할 수 있지만
  39. 사람.   = 1 ;  
  40. 정적 메소드를 추가 // 울었다
  41. 사람.   = 함수 ( ) {    
  42.       alert ( 'Wa wa wa ...' ) ;
  43. } ;
  44. // 프로토 타입 키워드를 사용하여 비 정적 속성을 추가, 각 사람의 치아는 많이하지 않을 수 있습니다
  45. 사람. 프로토 타입 . 치아   = 32 ;  
  46.  
  47. // 비 정적 메소드는 클래스의 인스턴스를 통해 액세스 할 수 있어야합니다
  48. var  me =   new  Person ( ‘Zhangsan’ );
  49. //使用非静态方法、属性
  50. me. show ( );
  51. alert ( ‘I have ‘  + me. teeth  +   ‘ teeth.’ );
  52. //使用静态方法、属性
  53. Person. cry ( );
  54. alert ( ‘I have ‘  + Person. mouth  +   ‘ mouth.’ );

转载于:https://www.cnblogs.com/200831856/archive/2009/09/15/javascript_static_1.html

추천

출처blog.csdn.net/weixin_33937778/article/details/93711356