zoukankan      html  css  js  c++  java
  • 四、javascript中的原型

    prototype是javascript最特别的地方之一。无论是实现javascript的面向对象还是继承,使用prototype都必不可少。

    原型表示对象的原始状态,javascript中的每个对象都有一个prototype属性,但是只有function类型的prototype属性可以使用脚本直接操作。

    prototype本身一个是Object类型。

    prototype就是C#类中的实例方法和实例属性。

    function staticClass(){};

    staticClass.staticMethod = function() {alert("static method")};

    staticClass.prototype.instanceMethod = function(){"instance method"};动态方法要使用prototype原型属性。

    实例方法需要实例化后才能调用:var instance = new staticClass();

    instance.instanceMethod();使用prototype除了可以声明实例方法,也可以声明实例属性。

    动态原型方法的精髓在于使用prototype声明实例方法,使用this声明实例属性。

    使用原型链实现继承

    GoodCar.prototype = new Car();

    var goodCar = new GoodCar();

    goodCar.showColor();

    实现了继承以后,还需要实现自己的run()方法,同样使用prototype实现。

    function GoodCar (){}

    GoodCar.prototype = new Car();

    GoodCar.prototype.run = function(){alert("run fast");}

    需要注意GoodCar类自身的方法一定要在实现继承语句之后定义。

  • 相关阅读:
    vuejs 2 生命周期钩子函数
    js 原型链
    两段代码说明 闭包,变量提升 问题
    node 模块全局位置
    git 提交代码
    mongoose 由一个版本引起的问题
    box-shadow 让div 立体起来
    flexbox 学习笔记 参考阮一峰老师的blog
    Linq的分页与组合查询的配合使用
    发送邮件和数据导出
  • 原文地址:https://www.cnblogs.com/tomkillua/p/2612905.html
Copyright © 2011-2022 走看看