JavaScript自定义对象

**函数:JavaScript中定义函数的方式有两种:
1.

function 函数名([参数列表]){
         函数体;//此定义方式使函数可以先调用后定义
}

2.

var 函数名=function([参数列表]){
    函数体;//此种方法定义的函数只能先定义后调用
}

另外匿名函数语法:

function[参数列表]{               
        函数体;                             
    }                                   
)([实参]);
 如:(     
        functionn){                                   
            console.log("此月份为"+n)
          }                         
     )  (8);

**JavaScript自定义对象:(对象是拥有属性和方法的数据)
JavaScript自定义对象方式有以下七种:直接创建方式,对象初始化器方式,构造函数方法,
prototype原型方式,混合的构造函数/原型方式,动态原型方式和工厂模式,这里为大家介绍常用的五种:
1.直接创建方式

创建语法:var 对象变量名=new Object();
         对象变量名 . 属性名=属性值;
         对象变量名 . 方法名=function([参数列表]){
               函数体;
    }

调用方法:调用属性–对象变量名 . 属性名;调用方法:对象变量名 . 方法名([参数列表]);
2.对象初始化器方式:

创建语法:var 对象变量名={
         属性名1:属性值1,
         属性名2:属性值2,
         方法名1function([参数列表]){
             函数体;
          }
    }

调用方法:调用属性–对象变量名 . 属性名;调用方法:对象变量名 . 方法名([实参列表]);
3.prototype原型方式
注意:在声明一个新的函数后,该函数就会拥有一个prototype的属性,通过该属性可以为对象(在JavaScript中函数也是对象)添加新的属性和方法

创建语法:function 构造方法名(){  //构造方法名首字母要大写
    }
    构造方法名.prototype.属性名=属性值;
    构造方法名.prototype.函数名=function([参数列表]){
        函数体;
    }
调用方法:var 对象名=new 构造方法名();
         对象名 . 属性名//调用属性值
         对象名 . 函数名([实参列表])//调用函数

此方式的优点为:使定义的函数和构造方法分离,代码整洁;缺点:不便于为属性动态赋值

4.构造函数方式

创建语法:function 构造函数名([参数列表]){
            this.属性名=属性值;
            this.函数名=function([参数列表]){
                函数体;
            }
        }
调用方法:var 对象名=new 构造函数名([实参列表]);
         对象名 . 属性名//调用属性值
         对象名 . 函数名([实参列表])//调用函数

此方法的缺点:将函数定义在构造函数体中,代码比较杂乱;优点:便于动态为属性赋值
5.混合的构造函数/原型方式
此方法结合构造函数方式和prototype原型方式的优点,使代码简便

创建语法:function 构造方法名([参数列表]){
            this.属性名=属性值;
    }
    构造方法名.prototype.函数名=function([参数列表]){
        函数体;
    }
调用方法:var 对象名=new 构造函数名([实参列表]);
         对象名 . 属性名//调用属性值
         对象名 . 函数名([实参列表])//调用函数

猜你喜欢

转载自blog.csdn.net/awjdwb/article/details/81407179