JavaScript对象和初始面向对象

原文链接: http://www.cnblogs.com/F017/p/10997405.html

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);

扫描二维码关注公众号,回复: 6779485 查看本文章


instanceof操作符

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

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

继承

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


借用构造函数

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

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


组合继承

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

转载于:https://www.cnblogs.com/F017/p/10997405.html

猜你喜欢

转载自blog.csdn.net/weixin_30877493/article/details/94881844