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

    1.创建对象

       在JS当中,对象分为两种: 自定义对象    内置对象

      1.1 自定义对象

        与Java中创建对象一样,创建自定义对象的最简答的方式就是使用操作符new 创建一个object的实例,然后通过"."为其添加属性和方法

        语法:  var 对象名称 =new Object();

        或者使用字面量赋值的方式在定义对象的时候为其添加属性和方法

        var 对象名称={

        属性1:值1,

        属性2,值2,

        函数名:function(){

        //函数体

            }  

        }

      1.2 内置对象

        JS的内置对象是一种特殊的数据,常见的内置对象如下:

    • String(字符串)对象
    • Date(日期)对象
    • Array(数组)对象
    • Boolean(逻辑)对象
    • Math(算数)对象
    • RegExp对象                           正则表达式

       2. 构造函数

        所谓的构造函数就是一个普通的函数,但是内部使用了this变量,对构造函数使用new操作符,就能生成实例

        function Flower(name,genera){

          this.name=name;

          this.genera=genera;

          this.showName=function(){

        }

        }

        var flower=new Flower("曼陀罗花","茄科");

        使用构造函数创建新实例,必须使用new操作符,以这种方式调用构造函数实际上会经历以下四个步骤

    1. 创建一个新对象
    2. 将构造函数的作用域赋给新对象(this就指向了这个新对象)
    3. 执行构造函数中的代码
    4. 返回新对象

      3.原型对象

      3.1 prototype
      函数定义的时候,函数本身会默认为该函数创建一个prototype的属性,而如果用new 运算符来生成一个对象的时候就没有prototype属性。而prototype也是一个对象,默认情况下prototype包含了2个属性,一个是constructor,另外一个是[[prototype]](大多数浏览器下显示为__proto__)。constructor属性是一个指向prototype属性所在函数的指针。

      3.2 constructor

        constructor始终指向创建当前对象的构造函数。我们知道每个函数都有一个默认的属性prototype,而这个prototype的constructor默认指向这个函数

      3.3. 确定原型和实例的关系

      使用instanceof 操作符,只要用这个操作符来测试实例与原型链中出现过的构造函数,结果就会返回True

      4.1原型
        每个函数都有prototype(原型)属性,这个属性是一个指针,指向一个对象,这个对象的用途是包含特定类型的所有实例共享的属性和方法,即这个原型对象是用来给实例共享属性和方法的。
      而每个实例内部都有一个指向原型对象的指针。

      4.2原型链

        每个构造函数都有一个原型对象,原型对象都包含一个指向构造函数的指针,而实例都包含指向原型对象内部的指针。我们让原型对象的实例(1)等于另一个原型对象(2),
      此时原型对象(2)将包含一个指向原型对象(1)的指针,
      再让原型对象(2)的实例等于原型对象(3),如此层层递进就构成了实例和原型的链条,这就是原型链的概念

  • 相关阅读:
    深度学习一:安装MXnet包,实现MNIST手写数体识别
    深度学习二:Neural art:用机器模仿梵高
    【Stanford CNN课程笔记】1. Image Classification and Nearest Neighbor Classifier
    PHP之图形处理
    Ubuntu14.10+cuda7.0+caffe配置
    CentOS系统上编译、安装、配置OpenCV
    安装MXnet包,实现MNIST手写数体识别
    Neural art:用机器模仿梵高
    String to Integer (atoi)
    Wildcard Matching
  • 原文地址:https://www.cnblogs.com/yjc1605961523/p/11004266.html
Copyright © 2011-2022 走看看