类的静态方法

Posted qjb2404

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了类的静态方法相关的知识,希望对你有一定的参考价值。

//es5

let Animal = function (type){
   this.type = type
}
//这是类的实例对象方法
Animal.prototype.eat = function (){
   Animal.walk()//引用类的静态方法
console.log(‘eat food‘) } 

//这是类的静态方法
Animal.walk = function () {
console.log(
‘walking‘)
}
let dog
= new Animal(‘dog‘)
dog.eat()
dog.walk()
//类的实例对象里没有walk这个方法

//es6

class Animal {
   constructor (type) {
      this.type = type
   }
   //类的实例对象方法
   eat (){
      Animal.walk()
      console.log(‘eat food‘)
   }
   //类的静态方法
   static walk (){
      console.log(‘walking...‘)
   }
}
let dog = new Animal(‘dog‘)
dog.eat()

根据场景选择定义不同的方法

类的静态方法:拿不到类的实例对象的信息

类的实例对象方法:可以访问实例对象的属性或方法

以上是关于类的静态方法的主要内容,如果未能解决你的问题,请参考以下文章