zoukankan      html  css  js  c++  java
  • 前端修炼-javascript关键字之prototype

       通常来说,javascript中的对象就是一个指向prototype的指针和一个自身的属性列表。只有构造器(Object,Function,Array,Date,String)才具有且会有一个prototype属性。原型链继承就是创建一个新的指针,指向构造器的prototype属性。

     prototype属性列表会默认有一个constructor(构造函数)属性,这个属性是一个指向prototype属性所在指针,也就是当前对象自己。

        

     1 function baseClass()
     2 {
     3     this.showMsg = function()
     4     {
     5         alert("baseClass::showMsg");   
     6     }
     7    
     8     this.baseShowMsg = function()
     9     {
    10         alert("baseClass::baseShowMsg");
    11     }
    12 }
    13 baseClass.showMsg = function()
    14 {
    15     alert("baseClass::showMsg static");
    16 }
    17 
    18 function extendClass()
    19 {
    20     this.showMsg =function ()
    21     {
    22         alert("extendClass::showMsg");
    23     }
    24 }
    25 extendClass.showMsg = function()
    26 {
    27     alert("extendClass::showMsg static")
    28 }
    29 
    30 extendClass.prototype = new baseClass();
    31 var instance = new extendClass();
    32 
    33 instance.showMsg(); //显示extendClass::showMsg
    34 instance.baseShowMsg(); //显示baseClass::baseShowMsg
    35 instance.showMsg(); //显示extendClass::showMsg
    36 
    37 baseClass.showMsg.call(instance);//显示baseClass::showMsg static
    38 
    39 var baseinstance = new baseClass();
    40 baseinstance.showMsg.call(instance);//显示baseClass::showMsg
  • 相关阅读:
    bug
    UIFont
    OC
    iOS 之 多线程一
    OC 之 const
    我的读书单
    算法之回文数判断
    排序算法 之 一
    isEqual
    xcode 必用插件二
  • 原文地址:https://www.cnblogs.com/haiwang/p/6761232.html
Copyright © 2011-2022 走看看