`

js prototype

 
阅读更多

最近一段时间,研究公司的平台,平台比较老了,还用的很老的js ,ajax也是用的原理级的东西,js底层的东西相对来说比较复杂,没有我们想的那个简单,当时看到了一个prototype这个属性,当时不理解,再后来的时间里有细细的研究了一遍,这个是理解代码与大家分享。

 

  /* 实例一
   function People()
  {
        this.Jump=function(){
            alert("I can jump");
    }
  }
 People.prototype.Run=function(){
        alert("I can run,too");
 }
 var p = new People();
 p.Jump();
 p.Run();
 */
 /* 实例2 理解类方法,对象方法,原型方法
 function People(name){
  this.name = name;
  this.indface= function(){
   alert("my name is "+this.name);
  }
 }
 
 People.Run = function(){
  alert("hello i am run !");
 }
 
 People.prototype.indfaceChinese=function(){
  alert("hello my name is "+this.name+" too.");
 }
 
 var p = new People("john");
 p.indface();
 People.Run();
 p.indfaceChinese();
 */
 /* 实例三 继承
 function baseclass(){
  this.say = function (){
   alert("baseclass:showmessage");
  }
 }
 
 function extendclass(){
 
 }
 
 extendclass.prototype = new baseclass();
 
 var instance = new extendclass();
 instance.say();
 */
 /** 实例四 继承的重写
 function baseclass(){
  this.say = function(){
   alert("baseclass : show message");
  }
 }
 
 function extendclass(){
  this.say = function(){
   alert("extendclass : show message");
  }
 }
 
 extendclass.prototype = new baseclass();
 
 var instance = new extendclass();
 instance.say();
 */
 /* 实例五 综合体现了 prototype的所有的属性
 function baseClass(){
  this.showMessage = function(){
   alert("show message!");
  }
  
  this.baseShowMessage = function(){
   alert("base show message!");
  }
 }
 
 baseClass.showMessage=function(){
  alert("cccccc static!");
 }
 
 function extendClass(){
  this.showMessage = function(){
   alert("extend show message");
  }
 }
 
 extendClass.showMessage= function(){
  alert("show extend show message static!");
 }
 
 extendClass.prototype = new baseClass();
 
 var instance = new extendClass();
 //重写了父类的方法
 instance.showMessage();
 //继承了父类的方法
 instance.baseShowMessage();
 //继承类调用类方法(可以理解成不能继承的静态的方法)
 extendClass.showMessage();
 //父类调用对象类方法(可以理解成不能继承的静态的方法)
 baseClass.showMessage(); 
 //通过父类调用call的方法执行对象方法
 baseClass.showMessage.call(instance);
 //通过创建父类的对象然后去调用对象方法的call的形式
 var baseInstance = new baseClass();
 
 baseInstance.showMessage.call(instance);
 */

分享到:
评论

相关推荐

    js遍历属性 以及 js prototype 和继承

    在JavaScript中,遍历属性、理解`prototype`和掌握继承机制是编程中不可或缺的基本技能。本文将深入探讨这些概念,并通过实例来加深理解。 首先,让我们来看如何遍历JavaScript对象的属性。JavaScript提供了多种...

    javascript prototype文档.rar

    JavaScript中的原型(Prototype)是理解JavaScript继承机制的关键概念。它是一种对象属性,允许一个对象访问并继承另一个对象的属性和方法。在这个“javascript prototype文档”中,我们可以期待深入学习JavaScript...

    javascript prototype原型操作笔记.docx

    ### JavaScript Prototype原型操作知识点 #### 一、Prototype基础概念 **Prototype** 在 JavaScript 中是一个非常重要的概念,它支持面向对象编程中的继承特性。每个 JavaScript 对象都有一个内部属性 `[...

    prototype.js javaScript插件

    "Prototype.js"是一个针对JavaScript的开源库,旨在增强和扩展JavaScript的基本功能,尤其在处理DOM(文档对象模型)操作、事件处理以及Ajax交互时提供了极大的便利。 ### 1. Prototype.js核心概念 - **原型链**:...

    javascript Prototype 对象扩展.docx

    ### JavaScript Prototype 对象扩展 #### 一、简介与背景 在JavaScript中,`prototype`是一个非常重要的概念,尤其是在面向对象编程(OOP)方面。通过利用`prototype`,开发者能够更高效地管理对象间的共享属性和...

    js 框架 prototype 的帮助文档

    `js prototype框架`的核心特性包括: 1. **对象创建与继承**:Prototype 使用`Object.extend()`方法实现对象的创建和合并,使用`Class.create()`或`Object.subclass()`创建类并实现继承。另外,`Object.clone()`...

    JavaScript的prototype

    JavaScript中的`prototype`是一个核心概念,它涉及到对象继承和函数原型。在JavaScript中,每创建一个函数,该函数就会自动获得一个名为`prototype`的属性,这个属性是一个对象,用于实现对象间的继承。同时,每个...

    javascript类库prototype.js

    Prototype.js 是一个强大的JavaScript类库,它为开发者提供了丰富的功能,使得创建具有高度互动性和Web2.0特性的富客户端页面变得更为简单。这个库的设计理念是扩展JavaScript的基础对象,提供一套统一且易于使用的...

    JavaScriptprototype的深度探索不是原型继承那么简单.pdf

    JavaScriptprototype的深度探索不是原型继承那么简单.pdf

    FramerWebView, Framer.JS Prototype的网页查看器.zip

    FramerWebView, Framer.JS Prototype的网页查看器 FramerWebView用于 Framer.JS Prototype的简单网页查看器。 用你的Prototype的URL替换 iframe ,然后在你的浏览器中打开它,你可以很好地访问 ! FramerWebView假定...

    prototype_1.7.3.js 最新版本

    《prototype_1.7.3.js:JavaScript框架的里程碑》 在JavaScript的世界里,Prototype库是一个不可或缺的重要组成部分,尤其在Web开发领域,它为开发者提供了强大的功能和便利性。Prototype_1.7.3.js是这个库的一个...

    framer-templates, Framer.js Prototype的演示模板.zip

    framer-templates, Framer.js Prototype的演示模板 成帧器演示文稿模板 特性当在桌面浏览器上查看时,Prototype将出现在设备"图文框"中,后面有一个可选的背景。 Prototype的内容将按浏览器窗口的大小缩放为 MATCH ...

    js prototype截取字符串函数

    prototype它是用Javascript写好的一些API,包括对Javascript中的类如String,Array等进行的扩充,把JS文件嵌入后直接用就行了. 代码如下:String.prototype.strLen = function() { var len = 0; for (var i = 0; i ...

    prototype.js的系列文章

    prototype.js的系列文章——$H()函数 百度的Ajax.js文件 常用JS prototype.js的系列文章——$R()函数 prototype.js的系列文章——Ajax.Request类 prototype.js的系列文章——Ajax.Updater类 prototype.js的系列文章...

    JavaScript_Prototype(源代码+中文手册).rar

    JavaScript Prototype 是一种重要的编程概念,尤其在Web开发中不可或缺。这个压缩包文件“JavaScript_Prototype(源代码+中文手册).rar”包含了关于JavaScript原型的源代码和中文手册,为学习和理解这一主题提供了...

    Prototype

    Prototype 是一个广泛使用的JavaScript库,设计目的是为了简化JavaScript的开发,尤其是处理DOM操作、AJAX交互以及事件处理等方面的工作。它通过提供一系列实用的工具函数和面向对象的特性,极大地提高了JavaScript...

    prototypejs 1.7.3

    PrototypeJS,简称为Prototype,是一个广泛用于JavaScript编程的开源库,它为JavaScript语言引入了许多实用的类和方法,极大地提高了开发效率。版本1.7.3是这个库的一个稳定版本,其中包含了丰富的功能和优化。...

    javascript prototype原型详解(比较基础)

    JavaScript中的`prototype`原型是理解面向对象编程的关键概念之一,尤其在JavaScript中,它是一种实现对象继承的方式。本文将深入探讨`prototype`的基本概念、作用以及通过代码实例来阐述其工作原理。 首先,每个...

    Prototype API

    "prototype.js 1.4.0 开发笔记中文版"很可能提供了针对该版本的详细解读和开发实践,对于学习和理解Prototype API 的具体用法和最佳实践非常有帮助。 综上所述,Prototype API 和 Scriptaculous 提供了丰富的...

    Prototype-1.6.0 中文版\英文版\Prototype.js

    Prototype.js 是一个广泛使用的JavaScript库,它为JavaScript语言增加了许多实用的功能,使开发Web应用程序变得更加简单。这个压缩包包含了Prototype的1.6.0版本,包括中文版和英文版的文档,以及源代码文件。 首先...

Global site tag (gtag.js) - Google Analytics