javascript是一种“基于prototype的面向对象语言“,与java有非常大的区别,无法通过类来创建对象。那么,既然是面象对象的,如何创建对象?下面本篇文章就来给大家介绍一下使用javascript创建对象的几种方法,希望对大家有所帮助。
1、通过“字面量”方式创建
方法:将成员信息写到{}中,并赋值给一个变量,此时这个变量就是一个对象。
例如:var person = (name:'dongjc', work:function() {console.log('write coding')});
如果{}中为空,则将创建一个空对象:var person = {} //创建空对象
示例:
var person = {
name: "dongjc",
age: 32,
Introduce: function () { alert("My name is " + this.name + ".I'm " + this.age); }
};
person.Introduce();
2、通过“构造函数”方式创建。
方法:var obj = new 函数名();
这与通过类创建对象有本质的区别。通过该方法创建对象时,会自动执行该函数。这点类似于php通过创建对像时,会自动调用构造函数,因此该方法称为通过"构造函数“方式创建对象。
示例:
function Person() {
this.name = "dongjc"; //通过this关键字设置默认成员
var worker = 'coding'; //没有this关键字,对象创建后,该变量为非成员
this.age = 32;
this.Introduce = function () {
alert("My name is " + this.name + ".I'm " + this.age);
};
alert("My name is " + this.name + ".I'm " + this.age);
};
var person = new Person();
person.Introduce();
此代码一共会两次跳出对话框,原因在于创建对象是自动执行了该函数。
注意:this关键字的使用。这里的this与php中话法意思类似,指调用该函数的对象,这里指的是person。
3、通过object方式创建
方法:先通过new object()构造一个对象,再往里丰富成员信息。var obj = new Object();
示例:
var person = new Object();
person.name = "dongjc";
person.age = 32;
person.Introduce = function () {
alert("My name is " + this.name + ".I'm " + this.age);
};
person.Introduce();