Javascript 面向对象编程:封装

Posted 沐风

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Javascript 面向对象编程:封装相关的知识,希望对你有一定的参考价值。

构造函数

1.构造函数方法很好用,但是存在一个浪费内存的问题

function Cat(name, color) {
    this.name = name;
    this.color = color;
    this.type = "猫科动物";
    this.eat = function () { alert("吃老鼠"); };
}

var cat1 = new Cat("大毛", "黄色");
var cat2 = new Cat("二毛", "黑色");
alert(cat1.type); // 猫科动物
cat1.eat(); // 吃老鼠

2.Prototype模式,所有实例的type属性和eat()方法,其实都是同一个内存地址,指向prototype对象,因此就提高了运行效率。

function Cat(name, color) {
    this.name = name;
    this.color = color;
}
Cat.prototype.type = "猫科动物";
Cat.prototype.eat = function () { alert("吃老鼠") };
var cat1 = new Cat("大毛", "黄色");
var cat2 = new Cat("二毛", "黑色");
alert(cat1.type); // 猫科动物
cat1.eat(); // 吃老鼠
alert(cat1.eat == cat2.eat); //true

 

以上是关于Javascript 面向对象编程:封装的主要内容,如果未能解决你的问题,请参考以下文章

javascript面向对象编程---封装

Javascript 面向对象编程:封装

Javascript 面向对象编程:封装

Javascript 面向对象编程:封装

Javascript 面向对象编程:封装

Javascript 面向对象编程:封装