js中对象创建的两种方法
//下面每种方式都将创建一个新的空对象 var newObject = {}; //object构造器的简洁记法 var newObject = new Object();
基本Constructor(构造器)
//简单的构造器模式 function Car(model,year,miles){ this.model=model; this.year=year; this.miles=miles; this.toString=function(){ return this.model+" has done "+this.miles+" miles"; }; }
带原型的Constructor(构造器)
//带原型的构造器 function Car(model,year,miles){ this.model=model; this.year=year; this.miles=miles; }; Car.prototype.toString=function(){ return this.model+" has done "+this.miles+" miles"; };
Module(模块)模式
对象字面量
在对象字面量表示法中,一个对象被描述为一组包含在大括号{}中、以逗号分隔的name/value对。对象内的名称可以是字符串或标识符,后面跟着一个冒号。对象中最后的一个name/value对的后面不用加逗号,如果加逗号将会导致出错。
Var myObjectLiteral={
variableKey:variableValue;
functionKey:function(){
//
}
};
对象字面量不需要使用new运算符进行实例化,但不能用在一个语句的开头,因为开始的可能被解读为一个块的开始。在对象的外部,新成员可以使用如下赋值语句添加在字面量上,如:
myModule.property="some Value";
使用对象字面量有助于封装和组织代码,Module模式仍然使用对象字面量,但只是作为一个作用域函数的返回值。