在学习函数式编程时曾经提到过,封装函数其实是封装一些公共的逻辑与功能,通过传入参数的形式达到自定义的效果,当面对具有共同特征的一类事物时,就可以结合构造函数与原型的方法将这类事物封装成对象
例如,我们将“人”这一类事物封装成一个对象,那么可以这样做
var Person = function(name, age){
this.name = name;
this.age = age;
}
Person.prototype.getName = function() {
return this.name;
}
这样,我们就利用构造函数与原型封装好了一个Person对象
具体某一个人的特定属性,通常放在构造函数中。
例如此处的name,age,他们的值不是所有人的共同属性,而且仅仅属于某一个人。因为每一个人的名字,年龄可能都是不相同的。
所有人的公共的方法与属性,通常会放在原型中。
例如此处的getName,他表示一个公共的动作,访问当前这个人的姓名。
当我们想要使用Person对象创建一个具体的“人”时,我们称这个被创建的“人”为一个实例
var p1 = new Person("Ken", 18);
var p2 = n