23-创建自定义对象
3.8.2 创建自定义对象
正如您看到的,使用JavaScript内置对象有多个优点。编写使用更多数据的代码时,您将需要创建包含特定属性和方法的自定义对象。
定义JavaScript对象的方式有多种,其中最简单的是动态方式,即创建一个通用对象,再根据需要添加属性。
例如,可使用下面的代码创建一个user对象,它包含姓和名,还有一个返回姓名的函数:
var user = new Object();
user.first="Brad";
user.last="Dayley";
user.getName = function( ) { return this.first + " " + this.last; }
这也可使用下面的语法通过直接赋值来实现,其中对象封装在大括号({}),而属性是使用语法property:value定义的:
var user = {
first: 'Brad',
last: 'Dayley',
getName: function( ) { return this.first + " " + this.last; }};
对于不需要重用的简单对象,这两种方式的效果都很好。对于要重用的对象,一种更佳的方法是将其封装在函数块内。这种方法的优点是,可将与对象相关的代码都放在对象内部,如下面所示:
function User(first, last){
this.first = first;
this.last = last;
this.getName = function( ) { return this.first + " " + this.last; }};
var user = new User("Brad", "Dayley");
这些方法的最终效果基本相同:创建一个包含属性的对象,这些属性可使用句点语法来引用:
print(user.getName());