close
- Class
- 宣告
-
class CLASS名稱 { ...內容 }
-
- constructor
-
class CLASS_NAME { constructor(.../*變數*/...) { } }
-
- method
- 在Class內部直接寫名字不需要function字樣
-
class CLASS_NAME { methodName(.../*變數*/...) { ... } }
- property/atrribute屬性(內部變數)
- 在任一個method(class 內部function)使用this.變數名稱,就會自動創建,可以在constructor中初始
-
class CLASS_NAME { constructor(.../*變數*/...) { this.property1=0;//number this.property2="";//string } }
- getter與setter
- 這兩個要同時撰寫不然是非法的語法
- getter與setter實際上是method,他會將這一組method再輸入的時候用setter,輸出時用getter
- 外部使用時視為屬性(語法糖),不需要使用小括弧
- 宣告
-
class CLASS_NAME { get NAME()//必定為空輸入 { /*processing here*/;//可以先處理一些事情再輸出 return something;//通常回傳屬性 (this.propertyName),也可是運算結果 } set NAME(value)//名稱需與getter相同,必要輸入一個變數 { /*processing here*/;//可以先處理一些事情再輸入 this.propertyName=value;//輸入 但不一定真的要輸入 } }
-
- 使用
-
var objectName = new ClassName(); objectName.getterAndSetterName = 5;//assign時直接調用setter alert(objectName.getterAndSetterName);//不assign時調用getter並回傳值
- 使用
-
new CLASS名稱(./*constuctor 輸入內容*/..); //會直接回傳一個新的物件,可以用變數存
- 宣告
文章標籤
全站熱搜