手记

【金秋打卡】第11天 再学JavaScript ES(6-10)全版本语法大全

课程名称:再学JavaScript ES(6-10)全版本语法大全
课程章节:2-15 Static Methods(如何操作方法?)
课程讲师:快乐动起来呀
课程内容:
实例对象的方法和类的静态方法(挂在类上的)

类的静态方法:通过对象实例去访问是访问不到的,只能通过类来访问

ES5做法(实例对象):prototype上定义的方法或者是在构造函数定义的方法都是实例对象的方法

eat方法就是实例对象的方法

Animal.prototype.eat=function(){

    Animal.walk() //调用类静态方法

    console.log('i am eat food')

}

ES5做法(类静态方法):

Animal.walk=function(){

    console.log('i am walking')

}

let dog = new Animal('dog');

dog.eat()//调用实例对象的方法

dog.walk(). //dog.walk is not a function

ES6

在类花括号里定义的方法 如果没有static关键字,那都是实例对象的方法;有static 定义的方法那就是类静态方法

static  walk(){

    console.log('i am walking')

}

Animal.walk() //调用类静态方法

实例对象的方法 VS 类的静态方法:只属于类的,不属于实例对象的

ES5做法:

对象的实例方法:在构造函数和原型对象上的方法都是对象的实例方法,是通过对象.方法名可以访问的

静态方法:

Anaimal.walk=function(){console.log(‘i am walking’)} 定义

Animal.walk() 调用

ES6做法:

实例对象的方法:只要在类这个花括号里定义的方法都是实例对象的方法,通过对象.方法名可以访问的

静态方法:

static walk(){console.log(‘i am walking’)} 定义

Animal.walk() 调用

课程收获:

方法依赖于实例对象的某些方法或属性,就必须定义为类的实例对象方法;
方法内不会涉及到实例对象的属性和方法,那就定义成类的静态方法


0人推荐
随时随地看视频
慕课网APP