function A(){
}
A.staticFn = function(){
console.log('this is a static function')
}
A.prototype.instanceFn = function(){
console.log('this is a instance function')
}
console.log(A.instanceFn) // undefined
function A(){
}
A.staticFn = function(){
console.log('this is a static function')
}
A.prototype.instanceFn = function(){
console.log('this is a instance function')
}
var aa = new A()
console.log(aa.staticFn) // undefined
静态方法
实例方法
静态方法在实例中无法访问,实例方法也没法在构造函数上取到,因此下面两例的输出都将是undefined.
静态方法和实例方法的取舍和选用
什么情况下我们应该把一个方法设计为静态方法?什么场景下我们应该把一个方法设计为实例方法呢?一般来说和实例相关的事情我们要设计为实例方法。向原型上挂载实例方法和属性的时候,我们应该设计为尽量设计为静态方法