静态方法
Person.say=function(){
console.log('I am a Person,I can say.')
};
Person.say(); //正常运行
var carl=new Person;
carl.say(); //报错
我们给Person这个类添加了一个say方法,它在类上面的,所以,它实际上是一个静态方法.
静态方法:不能在类的实例上调用静态方法,而应该通过类本身调用。
类(class)通过 static 关键字定义静态方法。以上对Person.say方法的定义等同于:
class Person {
static say() {
return console.log('I am a Person, I can say.');
}
}
实例方法
Person.prototype.getName=function(name){
console.log('My name is '+name);
}
Person.getName('Carl'); //报错
var carl=new Person;
carl.getName('Carl'); //正常运行
getName这个方法实际上是在prototype上面的,只有创建一个实例的情况下,才可以通过实例进行访问。