zoukankan      html  css  js  c++  java
  • [置顶] js对象

    js中,一切事物都是对象。对象是一切的基础。

     

    而具体到某一个对象时。

    对象则是包含一组变量和函数的集合实例

     

    我们先来中体会下je对象的全局。

     


     

    接下来就具体揭开这个对象的面纱吧

     

    ja对象分类


     

    • Function对象

    Function实例

    构造函数function

     

    • Object对象

    创建静态对象


    两者区别


    Function·对象,具有调用功能

    (可当做构造函数,添加参数),

    1通过new关键字实例化,构造函数function,必须通过

     function实例,如alert()

    2 Object对象,具有固定功能,不能调用()

     

    对象继承


    js中对象是基于原型的(prototype)。原型只存在与function中,所以一个原型就是一个对象,也是一个属性包


    对象具有的属性:


    Caller:表示调用正在执行的函数

    prototype可以用来为对象添加新的属性和方法

    arguments:表示函数参数的数组


     创建对象


    所有的内置对象都是可以通过New关键字或简单语法来创建对象的.如:

     

    Var Obj=New Object() ;
    或等于 var Obj={};
    Var  arry=new Array[];或
    Var arry=[ ];
     
     

    构造函数


    每个对象都是以构造函数为起点的。function是构造函数的起点,创建构造函数与上述创建对象Function类似


     

    如:
    Var  myfunction=new function('a',  '/*代码*/');
     
     function myfunction('a',  '/*代码*/');

    两种都可以,建议第二种方式优先。


    添加静态方法:

    静态方法充实只存在于对象的某一个具体的实例中,而不存在于构造函数中。更直观的是对存在于Object对象中。

    实例代码:

     

     

    Var myObject=new Object();
           //添加属性name属性
          myObject.name='h';
           //添加一个方法
         myObject.alertName=function(){
         Alert(this.name);
    }
           //执行添加的方法
         myObject.alertName();
     

    添加公有成员


    能够跟随对象实例化的成员称之为公有成员,添加公有成员需要修改函数的原型,即对象的prototype属性。


    特点:

    公有方法可以随构造函数而被继承下去。使用点操作符号添加方法。


     

    实例代码:
    Function my(message)
    {
    Alert(message);
    This.message=message;
    }
    //添加共有方法
    My.prototype.name=function(string){
    	This.message+=' '+string;
    	}
    //添加共有属性
    My.prototype.id='id';
    //实例化
    Varmyfunction=New my();
    //调用共有方法
    Myfunction.name();

     

    注意:你不能直接在my()函数中调用name方法,必须是在实例中调用该方法;


    私有成员


    是在构造函数中定义的变量和函数

     

     function my(){
    //私有属性
    Var myOwner='id';
    	my.alertName=function(){
    	Alert(this.name); 
    }


    特权成员


     是能够被公开访问的,而且还能访问私有成员。该方法是在构造函数的作用域中使用this关键字定义的方法:

     

    Function myname(message)
    {
        This.mymessage=message;
        Var myOwner=this;
        Var lastname='id';
     
        //特权方法
         This.appendTomessage=function(string){
     
         This.mymessage+=lastname+string;
          Alert(mymessage);
         }
    }


    对象字面量:


    是一种语法规则,是创建一个带有共有方法的构造函数的语法;

    使用的是点标识符创建对象和成员。

    实例代码

     如我们刚才创建的私有成员,一般方法创建为

     

    function my(){
    //私有属性
    Var myOwner='id';
    	my.alertName=function(){
    	Alert(this.name); 
    }
    
    


    对象字面量方法:

    Function my{
    myOwner:'id',
    alertName:function(){
    Alert(this.name)
     
    }
    }


    注意: 最后是没有逗号的。


    小结:


    以上是对象的基本描述

    在jis中对象分为


    function类型(用与创建构造函数,共有成员,私有成员,以及特权成员)

    Object类型,用于创建静态成员

    共同点

    :都可以创建对象字面量


         不同点:

    Object具有固定功能,不能想function那样调用()

    Function可当做构造函数,添加参数,进行调用。


    到这里js对象的基础就已经告一段落了,欢迎大家指点


  • 相关阅读:
    Python – GitHub CentOS
    Python – GitHub Ubuntu
    学习jQuery Treeview一天的感受
    让我郁闷了一个下午的list为null
    在徘徊中前进的一天
    都是被逼的,被逼的
    和技术无关,生活中的一点感受
    我又错了
    忽然的感受
    学习jQuery的一天
  • 原文地址:https://www.cnblogs.com/riskyer/p/3239170.html
Copyright © 2011-2022 走看看