Class 的基本使用

  1. class使用
  2. 属性定义
  3. 方法定义
  4. 静态方法定义
  5. 私有方法提案
  6. 方法名使用变量
  7. new.targe判断对象是否时被new创建的(可以规范调用方式)
const varMethod = "varMethod"

class Page{
  current = 1
  pageSize = 10
  
  #dd = "dd" // 私有属性
  
    
  constructor (props) {
  
  this.data = props.data;
  
  // 默认返回Page的对象实例,但是可以自定义返回对象
  }
  
  static target = "target attr" // 静态属性
  
  static method() {  // 静态方法
    return "static method"
  }
  
  [varMethod ] () {
   return "varMethod"
  }
  
  
  get current1() {  // 如果和current重复,则本身不生效
    return "haha" + this.current
  }
  set current1 (value) {
    if(value < 0) {
      console.log("current 不能")
      return false
    }
    
    this.current = value
  }
  
  
  valueOf() { // 数值转换时后调用,隐式调用也会
    return 9527
  }
  
  toString () {
    return `[object Page]`
  }
  
  
}

Class继承

  1. extend
  2. super (构造函数内先调用super方法)

张仪ranck
410 声望9 粉丝

« 上一篇
ES Proxy