刚刚学习js时候曾经 Math.min()等方法为啥可以直接调用?啥时静态方法? 现在肤浅的理解下; 1.静态方法就是定义在 构造函数的方法; 2.实例方法就是定义在 构造函数原型(prototype)上的方法; 面试的时候很多面试官会问:数组有哪些方法。那么我们就拿数组的方法来举例。
静态方法: Array的新方法from/of都是。在控制台输入 Object.getOwnPropertyNames(Array) 就可以看到他们的名字。
实例方法:Array的大部分方法都是。在控制台输入 Object.getOwnPropertyNames(Array.prototype)
或者直输入 Array.prototype 。
function Person(){
this.name="liu";
this.age=25;
//实例方法2
this.sayAge2=function(){
console.log("25---实例方法2")
}
}
//静态方法;
Person.sayName=function(){
console.log("liu---静态方法")
}
//实例方法
Person.prototype.sayAge=function(){
console.log("25---实例方法")
}
var person=new Person();
Person.sayName();
person.sayAge();
person.sayAge2();
//liu---静态方法
//25---实例方法
//25---实例方法2
还有一个实例方法和静态方法就是jquery的。jquery.fn.extend()添加的是实例方法,jquery.extend()添加的是静态方法
附上一篇文章:https://www.cnblogs.com/signheart/p/3b352bb242b4ad6f84c0b073b527e0db.html