zoukankan      html  css  js  c++  java
  • JavaScript对象和初始面向对象

    JavaScript中的基本数据类型
        number(数值类型)
        string(字符串类型)
        boolean(布尔类型)
        null(空类型)
        undefined(未定义类型)
        object

    对象是包含相关属性和方法的集合体
        属性
        方法
    具有相同的属性和方法的对象的集合就是类

    什么是面向对象
        面向对象仅仅是一个概念或者编程思想
        通过一种叫做原型的方式来实现面向对象编程


    基于Object对象的方式创建对象
    var flower=new Object();
        flower.name="长春花";
        flower.genera="夹竹桃科 长春花属";
        flower.area="非洲、亚热带、热带以及中国大陆的华东、西南、中南等地";
        flower.uses="观赏或用药等";
        flower.showName=function(){    alert(this.name);    }
     flower.showName();


    使用字面量赋值方式创建对象

    var flower={
            name:"长春花",
            genera:"夹竹桃科 长春花属",
            area:"非洲、亚热带、热带以及中国大陆的华东、西南、中南等地",
            uses:"观赏或用药等",
            showName:function(){ alert(this.name); }
        }
     flower.showName();


    常见的内置对象

        String(字符串)对象
        Date(日期)对象
        Array(数组)对象
        Boolean(逻辑)对象
        Math(算数)对象
        RegExp对象


    constructor属性

    constructor属性指向Flower

    alert(flower1.constructor==Flower);
    alert(flower2.constructor==Flower);
    alert(flower3.constructor==Flower);


    instanceof操作符

    alert(flower1 instanceof Object);
    alert(flower1 instanceof Flower);

    原型对象
        每个函数都有一个prototype属性,这个属性是一个指针,指向一个对象
        prototype就是通过调用构造函数而创建的那个对象实例的原型对象

    继承

    原型链
        一个原型对象是另一个原型对象的实例
        相关的原型对象层层递进,就构成了实例与原型的链条,就是原型链


    借用构造函数

    apply([thisOjb[,argArray]])
    应用某一对象的一个方法,用另一个对象替换当前对象

    call([thisObj[,arg1[,arg2[,  [,argN]]]]])
    调用一个对象的一个方法,以另一个对象替换当前对象


    组合继承

    组合继承:有时也叫做伪经典继承
        将原型链和借用构造函数的技术组合到一块,发挥二者之长的一种继承模式
        使用原型链实现对原型属性和方法的继承,而通过借用构造函数来实现对实例属性的继承

  • 相关阅读:
    基于摸板匹配的目標跟蹤算法
    spoj 2713 Can you answer these queries IV
    zoj 3633 Alice's present
    hdu 3642 Get The Treasury
    poj 1195 Mobile phones
    poj 2760 End of Windless Days
    zoj 3540 Adding New Machine
    spoj 1716 Can you answer these queries III
    spoj 1043 Can you answer these queries I
    spoj 2916 Can you answer these queries V
  • 原文地址:https://www.cnblogs.com/F017/p/10997405.html
Copyright © 2011-2022 走看看