JS创建对象的几种方式

JavaScript012

JS创建对象的几种方式,第1张

推荐有一下几种方式:

1.对象字面量创建对象

var

obj

=

{

a:1,b:2

}

注意:对象字面量是一个表达式,这种表达式每次运算都会创建并初始化一个新对象,并计算这个新对象的每个属性值。所以如果在循环体内使用对象字面量,每次循环时都会创建新对象。

2.通过new运算符创建对象

var

obj

=

new

object()

//创建空对象

var

ary

=

new

array()

//创建空的数组对象

注意:new运算符后面跟的是一个函数调用,这个函数被称为构造函数。js中原始类型都包含内置的构造函数,也可以自己定义构造函数。

3.通过立即执行函数创建对象

var

obj

=

(function(){

return

{x:1,y:2}}())

注意:在立即执行函数内部一定要有return语句,return出的内容就是待创建的对象。

在JavaScript中定义对象可以采用以下几种方式:

1.基于已有对象扩充其属性和方法

2.工厂方式

3.构造函数方式

4.原型(“prototype”)方式

5.动态原型方式 -- 1.基于已有对象扩充其属性和方法

object.name = "zhangsan"

object.sayName = function(name)

{

       this.name = name

       alert(this.name)

}

object.sayName("lisi") -- 2.工厂方式 

function createObject() 

{

       var object = new Object()

       object.username = "zhangsan"

       object.password = "123"

       object.get = function()

       {

              alert(this.username + ", " + this.password)

       }

       return object

}

var object1 = createObject()

var object2 = createObject()

object1.get()

 -- 采用带参数的构造方法:

function createObject(username, password)

{

       var object = new Object()

       object.username = username

       object.password = password

       object.get = function()

       {

              alert(this.username + ", " + this.password)

       }

       return object

}

var object1 = createObject("zhangsan", "123")

object1.get()