사실, 클래스는 객체의 템플릿입니다. mootoos 프레임워크에서 영감을 받아 JS의 OO 기능을 향상시키기 위해 JSON 객체를 사용하여 이 객체의 템플릿을 설명할 수 있습니다. 이 템플릿에서는 전용 멤버, 보호 멤버 및 정적 멤버를 시뮬레이션할 수 있습니다.
이것은 JS에서 시뮬레이션된 클래스 정의 구문입니다. 코드의 클래스는 두 개의 매개변수를 허용하며 두 번째 매개변수는 객체 템플릿입니다. 이 JSON 개체에서 "extend", "initialize" 및 "static" 필드는 사전 정의된 일부 키워드이며 해당 의미는 기존 클래스 기반 OO 언어와 유사합니다. accessabe 필드는 객체 멤버의 접근성을 설명하는 데 사용됩니다. 값은 ("private", "protected", "public")입니다. 이러한 키워드는 수정된 멤버가 해당 액세스 권한을 갖도록 클래스 함수에서 특별히 처리됩니다.
Class("Person" ,{ //继承 extend: Animal, //构造函数 initialize:function(name,sex){ this.name = name; this.sex = sex; Person.count++; }, //静态成员 static:{ count: { accessabe:"private", value: "" } }, //实例成员 age: {//私有属性成员 accessabe:"private", value:0 }, //公用属性 name: { accessabe:"public", value:"" }, sex:{ accessabe:"public", value: "" }, //方法 sleep: {//受保护方法 accessabe:"protected", value: function(){ } }, say: {//公用方法 accessabe:"public", value: function(){ retun (this.age-1) } } }); //调用 var xiaom = new Person("小明","男"); xiaom.age //私有属性不能访问 xiaom.sleep() //受保护方法不能访问 xiaom.say() //公用方法可以访问
위 내용은 Javascript의 개인 멤버, 보호 멤버 및 정적 멤버 인스턴스 분석이란 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!