`
beijibingshan
  • 浏览: 10406 次
  • 性别: Icon_minigender_2
  • 来自: 南京
社区版块
存档分类
最新评论

悟透JavaScript之原型真谛-用简洁而优雅的代码书写类层次及其继承关系

阅读更多
<!DOCTYPE html>
<html>
<head>
    <title></title>
    <script>
        var object = {
            isA :function(aType){
                var self = this;
                while(self){
                    if(self==aType){
                        return true;
                    }
                    self=self.Type;
                }
                return false;
            }
        }
        function Class(aBaseClass,aClassDefine){
            function class_(){
                this.Type=aBaseClass;//
                for(var member in aClassDefine){
                    this[member] = aClassDefine[member];
                };
            }
            class_.prototype=aBaseClass;
            return new class_();
        }
        function New(aClass,aParams){
            function new_(){
                this.Type=aClass;
                if(aClass.create){
                    aClass.create.apply(this,aParams);
                }
            }
            new_.prototype=aClass;
            return new new_();
        }
        var Person = Class(object,{
            create:function(name,age){
                this.name=name;
                this.age=age;
            },
            sayHello:function(){
                alert("Hello , I'm "+this.name);
            }
        });
        var Employee = Class(Person,{
            Create:function(name,age,salary){
                Person.create.call(this,name,age);
                this.salary = salary;
            },
            ShowMeTheMoney:function(){
              alert(this.name+"$"+this.salary);
            }
        }) ;
        var BillGates = New(Person,["BillGates",53]);
        var SteveJobs = New(Employee,["SteveJobs",53,1000]);
        BillGates.sayHello();
        alert(BillGates.isA(Person));//true
        alert(SteveJobs.isA(Person));//true
    </script>
</head>
<body>

</body>
</html>

 

分享到:
评论

相关推荐

    悟透JavaScript.rar

    "悟透JavaScript"中的实例解析部分则提供了大量实例代码,这些实例直接针对具体应用场景,让学习者能够快速把握JavaScript的精髓,并将理论知识转化为实际操作能力。通过逐步解析每一个实例,学习者可以由浅入深,...

    轻轻松松学用javascript编程 、悟透JavaScript

    函数是可重复使用的代码块,而对象则是存储数据和功能的组合,JavaScript的原型继承机制使得对象可以共享属性和方法。 深入学习JavaScript,需要理解闭包——一个函数及其相关的引用环境组合而成的实体,它是...

    悟透javascript(精简版)

    在《悟透JavaScript(精简版)》这本书中,作者李战(leadzen)以独特的视角探讨了编程世界的本质——数据与代码之间的关系。他通过生动的比喻,将数据与代码的关系比作物质与能量的关系,形象地描述了两者之间既...

    悟透JavaScript

    【悟透JavaScript】深入解析数据与代码的交互 在编程领域,JavaScript是一种极其重要的脚本语言,它将数据和代码的交互展现得淋漓尽致。JavaScript中的数据和代码是编程的基本元素,它们之间的关系就像物质与能量...

    悟透JavaScript-pdf版

    这部分内容对于理解和编写可维护的代码至关重要,因为JavaScript的面向对象模型与传统的类继承有所不同,需要特别理解。 函数式编程是JavaScript的另一大特色。书中详细讨论了函数作为一等公民、闭包、异步编程...

    悟透javascript

    在《悟透JavaScript》中,作者深入浅出地解释了JavaScript的基本元素:数据和代码,以及它们之间的关系。JavaScript中的数据类型分为简单数据类型和复杂数据类型,而代码则主要表现为函数形式。 简单数据类型包括...

    一个月悟透JavaScript

    "一个月悟透JavaScript"这本书显然旨在帮助读者在短时间内深入理解和掌握这门语言的精髓。JavaScript以其灵活、动态的特性,使得网页交互变得更加丰富和生动。下面,我们将根据书名和描述,探讨JavaScript的一些关键...

    悟透JavaScript.txt

    ### 悟透JavaScript——解析数据与代码的交织之美 #### 一、数据与代码的哲学 在编程的世界中,存在两种基本元素:**数据**和**代码**。这两种元素相互作用,共同构建了一个充满生机与活力的世界。数据通常被视为...

    悟透JavaScript javascript 圣经

    在“悟透JavaScript”的描述中,通过类比数据与代码的关系与物质能量之间的关系,强调了JavaScript中对象和类的重要性。神秀和慧能的偈子寓言,形象地展示了面向对象编程的核心思想:对象是数据和行为的统一体,而类...

    悟透JavaScript20150

    3. **模板字符串**:使用反引号(`)定义的字符串,可以方便地插入变量(${expression})并进行多行书写,提高了代码的可读性和易维护性。 4. **let与const**:这两个新的变量声明关键字取代了var,let具有块级作用域...

    悟透JavaScript-李站.rar

    "悟透JavaScript-李站"这个压缩包文件很可能包含了一系列关于深入理解和精通JavaScript的教程或资料。 在学习JavaScript时,首先要理解其基础语法,包括变量、数据类型(如字符串、数字、布尔值、对象、数组、null...

    悟透JAVASCRIPT.zip

    JavaScript,简称JS,是互联网上最广泛使用的编程语言之一,主要应用于网页和网络应用的开发。它是一种轻量级的解释型脚本语言,具备动态类型、原型化继承、函数作为一等公民等特点,使得其在创建交互式网页、前端...

    浅析JavaScript实现基于原型对象的“继承”.pdf

    JavaScript的基于原型的继承风格使用起来非常灵活、高效,但对于初学者,要准确理解原型对象及其继承机制还是比较困难。本文将对JavaScript原型继承的方式进行介绍,并结合实例进行分析。 基于类的继承 面向对象...

Global site tag (gtag.js) - Google Analytics