`

面向对象的javascript语言

阅读更多
1.封装
function Car(sColor,iDoors,iMpg){
      this.color = sColor;
      this.doors = iDoors;
      this.mpg   = iMpg;
      this.drivers = new Array("Mike","Sue");

       if(typeof Car._initialized == "undefined"){
        
          Car.prototype.showColor = function(){
                alert(this.color);
          }
          Car._initialized = true;
       }
}
2.继承
a.对象冒充
  function ClassA(sColor){
      this.color = sColor;
      this.sayColor = function(){
           alert(this.color);
      };
  }

  function ClassB(sColor){
       this.newMethod = ClassA;
       this.newMethod(sColor);
       delete this.newMethod;

       this.name = sName;
       this.sayName = function(){
            alert(this.name);
       };
  }

  var objA = new ClassA("red");
  var objB = new ClassB("blue","Nicholas");
  objA.sayColor(); // "red"
  objB.sayColor(); // "blue"
  objB.sayName();  // "Nicholas"

//注意:对象冒充可以实现多重继承
b.call()方法
function ClassB(sColor, sName){
     //this.newMethod = ClassA;
     //this.newMethod(sColor);
     //delete this.newMethod;
     ClassA.call(this,sColor);

     this.name = sName;
     this.sayName = function(){
          alert(this.name);
     };
}
c.apply()方法
function ClassB(sColor ,sName){
    //this.newMethod = ClassA;
    //this.newMethod(sColor);
    //delete this.newMethod;

    ClassA.apply(this, new Array(sColor));
 
    this.name = sName;
    this.sayName = function(){
         alert(this.name);
    };
}
d.混合方法
function ClassA(sColor){
     this.color = sColor;
}
ClassA.prototype.sayColor = function(){
    alert(this.color);
};
function ClassB(sColor ,sName){
     ClassA.call(this,sColor);
}
ClassB.prototype = new ClassA();
ClassB.prototype.sayName = function(){
    alert(this.name);
};






























分享到:
评论

相关推荐

    面向对象JavaScript精要(英文原版pdf)

    ### 面向对象JavaScript精要 #### 一、书籍概览 本书《面向对象JavaScript精要》由Nicholas C. Zakas编写,是面向对象编程领域中的权威指南之一,尤其针对JavaScript这门语言。作者深入浅出地介绍了面向对象编程的...

    面向对象JavaScript开发

    面向对象JavaScript开发是现代Web开发中不可或缺的一部分,它使得JavaScript能够构建复杂、可维护的应用程序。 面向对象编程是一种基于对象和类的编程范式,它强调数据和操作数据的方法的封装。在JavaScript中,...

    Javascript面向对象编程.

    面向对象编程(Object-Oriented Programming,OOP)是编程的一种重要范式,JavaScript也完全支持这一特性,尽管它并非一种传统的静态类型语言。这篇博客文章可能详细讨论了如何在JavaScript中实现面向对象编程。 在...

    JavaScript面向对象编程指南.pdf

    如何应用适当的编程模式,发挥JavaScript语言特有的优势;如何应用设计模式解决常见问题等。 《JavaScript面向对象编程指南》着重介绍JavaScript在面向对象方面的特性,展示如何构建强健的、可维护的、功能强大的...

    JavaScript面向对象编程指南

    如何应用适当的编程模式,发挥JavaScript语言特有的优势;如何应用设计模式解决常见问题等。, 《JavaScript面向对象编程指南》着重介绍JavaScript在面向对象方面的特性,展示如何构建强健的、可维护的、功能强大的...

    javascript面向对象编程

    JavaScript作为一门浏览器语言的核心思想;面向对象编程的基础知识及其在JavaScript中的运用;数据类型、操作符以及流程...如何应用适当的编程模式,发挥JavaScript语言特有的优势;如何应用设计模式解决常见问题等。

    JAVASCRIPT 面向对象编程精要

    JavaScript是一种基于原型的语言,这意味着它不像传统的面向对象语言(如Java或C++)那样拥有类的概念。在JavaScript中,对象是核心,一切都可以视为对象。JavaScript的对象是动态的,即可以在运行时添加或删除属性...

    javascript面向对象编程.pdf

    现代JavaScript语言之所以可靠、健壮且强大,得益于无数聪明程序员的认同与实践,使得一些概念和用法得到了升华和普及。 面向对象的编程(OOP)在JavaScript中并不是新鲜事物。JavaScript被设计成一种彻底的面向...

    面向对象Javascript核心支持代码分享

    JQury框架绝对是页面开发的首选,代码短小强悍,缺点就是... Javascript做面向对象开发的时候,总是会用到很多模拟面向对象特性的方法,这些方法就构成了支撑面向对象Javascript的核心代码,以下就是部分代码,其中参考

    javascript 经典面向对象设计

    - JavaScript与传统面向对象语言的区别 - 原型链 - 构造函数 - 类与继承 - 静态属性与方法 3. **设计模式** - 单例模式 - 工厂模式 - 抽象工厂模式 - 建造者模式 - 适配器模式 - 装饰器模式 - 代理模式...

    [JavaScript] 面向对象 JavaScript 第2版 英文版

    [Packt Publishing] 面向对象 JavaScript 第2版 英文版 [Packt Publishing] Object Oriented JavaScript 2nd Edition E Book ☆ 图书概要:☆ Think in JavaScript Make object oriented programming ...

    javascript面向对象编程(中文).pdf

    - **JavaScript与OOP**:虽然JavaScript并不是从一开始就设计为面向对象的语言,但它具备了面向对象编程的所有核心特性,例如封装、继承和多态。 - **构造函数与原型链**: - **构造函数**:用于创建对象实例的...

    Javascript面向对象编程

    通过上述介绍,可以看出JavaScript虽然不像传统意义上的面向对象语言那样提供明确的类和对象概念,但它仍然支持面向对象编程的基本思想。利用`function`作为类的定义、`new`操作符创建对象、以及`this`和`prototype`...

    JavaScript面向对象编程指南(第2版).rar

    面向对象编程(Object-Oriented Programming,OOP)是JavaScript中的一个重要概念,它允许开发者通过对象来组织代码,提高可读性和可维护性。本指南的第二版深入探讨了JavaScript的面向对象特性,旨在帮助开发者更好...

Global site tag (gtag.js) - Google Analytics