1.Javascript的构造函数中可以添加一些成员,可以在构造函数本身添加,也可以在构造函数的内部的this上添加,通过这两种方式添加的成员,就分别成为静态成员和实例成员。
静态成员:在构造函数本上添加的成员称为静态成员,只是由构造函数本身来访问
实例成员:在构造函数内部创建的对象成员称为实例化成员,只能由实例化成员的对象访问
//构造函数中的属性和方法我们称为成员,成员可以添加;
//实例化成员就是指构造函数内部通过this添加的成员,uname,age,sing就是实例化成员;
function Star(uname,age){
this.uname = uname;
this.age = age;
this.sing = function(){
console.log('我会唱歌');
}
}
//实例成员只能通过实例化的对象来访问
var ldh = new Star('刘德华',18);
var zxy = new Star('张学友',20);
console.log(ldh.uname);
console.log(zxy.uname);
//想访问里面的sing方法可以用实例化对象来访问
ldh.sing();
zxy.sing();
//不可以用构造函数来访问的实例成员
console.log(Star.uname);//会返回undefined
//2.静态成员,在构造函数本身添加的成员 sex就是静态成员
Star.sex = '男'
//静态成员只能通过构造函数来访问
console.log(Star.sex);//结果为男
//静态成员不能通过实例化对象来访问
console.log(ldh.sex);//结果为undefined
运行结果如下: