静态成员
指由构造函数所使用的成员,与之相对的是由构造函数创建的对象所使用的实例成员
构造函数使用的成员是静态成员
由构造函数创建的对象使用的成员是实例成员
关于javascript中静态成员和实例成员的详细解释
在我们了解什么是静态成员和实例成员之前,我们首先来了解一下什么是实例?
实例就是由构造函数创建出来的对象。
例如案例中 p 就是实例:
function Person() {}// 此函数为构造函数
var p=new Person(); // p为构造函数创建出来的对象
我们在讨论静态成员和实例成员时候,把函数当成构造函数, 把创建出来的对象称之为实例。在此明白了什么是实例,下面我们就可以说什么是静态 成员和实例成员了。
首先什么是实例成员?
实例成员:由构造函数创建出来的对象能直接访问的属性和方法,包括:对象本身 以及原型中的所有的属性和方法。
案例如下: function Person(name, age) {
this.name = name;
this.age = age;
}
Person.prototype.sayHi = function() {
console.log("hello, rose");
};
var p = new Person("jack", 19);
( p.name p.age p.sayHi) 括号内三个就是实例成员了。
再次什么是静态成员?
静态成员:由构造函数直接访问到的属性和方法。大家注意是直接访问的属性和方法,间接获取就不是了。
案例如下: function Person(name, age) {
this.name = name;
this.age = age;
}
var p = new Person("jack", 19);
Person.say = function() { alert("这是静态方法"); };
Person.say 就是静态成员
Person.length 也是静态成员,因为length是函数中的 方法,是来直接获取函数中形参的个数。