构造函数(可以用来创建大量相同属性和方法的对象,和类相似):
function Person(name,age,sex) {
this.name = name;
this.age = age;
this.sex = sex;
console.log(this.name,this.age,this.sex)
}
var per1 = new Person('清水',18,'男');
var per2 = new Person('寒沙',19,'女');
// 如果往构造函数里面添加值,他的结果是undefined
Person.s = 1;
console.log(per1.s); // undefined
原型:
每一个构造函数都有prototype(原型)属性,这个属性是一个指针,指向一个对象,这个对象包含特定类型的所有实例共享的属性和方法.
function Person(name,age,sex) {
this.name = name;
this.age = age;
this.sex = sex;
console.log(this.name,this.age,this.sex)
}
var per1 = new Person('清水',18,'男');
var per2 = new Person('寒沙',19,'女');
Person.s = 1;
console.log(per1.s); // undefind
// 如果使用perototype方法就可以为person
Person.prototype.s1 = 2;
console.log(per1.s1) // 2
网友评论