JavaScript使用Prototype实现面向对象的方法

 更新时间:2015年04月14日 11:07:48   作者:秋风秋雨  
这篇文章主要介绍了JavaScript使用Prototype实现面向对象的方法,实例分析了Prototype属性的使用技巧,非常具有实用价值,需要的朋友可以参考下

本文实例讲述了JavaScript使用Prototype实现面向对象的方法。分享给大家供大家参考。具体分析如下:

prototype 是 Function 对象的一个属性,这个属性指向另一个对象。 这个对象的所有属性和方法,都会被构造函数的实例继承。

同时 prototype 又存在一个指向构造函数的引用 constructor,这样就成功的构成一个循环引用的原型链结构。

我们可以把那些不变的属性和方法,直接定义在 prototype 对象上, 节省内存开销。

function Cat(name, color) {
  this.name = name;
  this.color = color;
}
Cat.prototype.type = 'mammal';
Cat.prototype.eat = function() {
  console.log('eat fish');
};
var cat1 = new Cat('Kitty', 'white');
var cat2 = new Cat('Smokey', 'black');
console.log(cat1.type); // mammal
console.log(cat1.eta === cat2.eta);
// TRUE, same reference
console.log(cat1.constructor === Cat)
// TRUE, from Person.prototype

希望本文所述对大家的javascript程序设计有所帮助。

相关文章

  • 理解JavaScript中的对象 推荐

    理解JavaScript中的对象 推荐

    JavaScript有一种object数据类型,但是这种对象不同于c#或vb中的对象,在c#中,我们通过类创建一个对象,一个类相当于创建对象的模板,定义了对象的属性和方法,这些对象和方法将永远固定,我们不能在运行时不能增加对象的属性和方法。
    2011-01-01
  • echarts控制x轴和y轴name位置并加轴箭头代码示例

    echarts控制x轴和y轴name位置并加轴箭头代码示例

    搞数据展示,很多朋友都会用到免费的echarts,下面这篇文章主要给大家介绍了关于echarts控制x轴和y轴name位置并加轴箭头的相关资料,需要的朋友可以参考下
    2024-01-01
  • Atitit.js的键盘按键事件捆绑and事件调度

    Atitit.js的键盘按键事件捆绑and事件调度

    这篇文章主要介绍了Atitit.js的键盘按键事件捆绑and事件调度的相关资料,需要的朋友可以参考下
    2016-04-04
  • 深入理解 ES6中的 Reflect用法

    深入理解 ES6中的 Reflect用法

    这篇文章主要介绍了深入理解 ES6中的 Reflect用法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-07-07
  • 使用纯javascript实现放大镜效果

    使用纯javascript实现放大镜效果

    本文给大家分享的是使用纯javascript实现放大镜效果的代码,并附上封装的步骤,做电商程序的小伙伴们一定不要错过。
    2015-03-03
  • JS替换字符串中空格方法

    JS替换字符串中空格方法

    这篇文章主要介绍了JS替换字符串中&nbsp方法,非常的简单实用,附上各种示例代码,有需要的小伙伴可以参考下。
    2015-04-04
  • JS 控制小数位数的实现代码

    JS 控制小数位数的实现代码

    上网查一查的确存在这种Bug,除了位数上控制之外也没什么也好的方法(希望高手能提出其它思路)。
    2011-08-08
  • yolov5项目部署+微信小程序前端展示的全过程

    yolov5项目部署+微信小程序前端展示的全过程

    YOLOV5模型从发布到现在都是炙手可热的目标检测模型,被广泛运用于各大场景之中,下面这篇文章主要给大家介绍了关于yolov5项目部署+微信小程序前端展示的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2022-11-11
  • npm install报错Error:EPERM:operation not permitted,rename解决办法

    npm install报错Error:EPERM:operation not permitted,rename解决

    这篇文章主要给大家介绍了关于npm install报错Error:EPERM:operation not permitted,rename的解决办法,文中介绍了可能遇到的多种原因以及解决办法,需要的朋友可以参考下
    2024-01-01
  • js实现无限瀑布流实例方法

    js实现无限瀑布流实例方法

    在本篇文章里小编给大家整理的是关于js实现无限瀑布流实例方法以及相关代码,需要的朋友们学习下吧。
    2019-09-09

最新评论