创建对象一
ECMAScript中的对象其实就是一组数据和功能的集合。对象可以通过执行new操作符后跟要创建的对象类型的名称来创建。而创建Object类型的实例并为其添加属性和方法,就可以创建自定义对象,如下所示:
var o = new Object();
o.name = "Alvin"; //添加属性
//添加方法
o.sayHello = function(){
console.log("hello "+ this.name);
}
这个语法与Java中创建对象的语法相似,但在JavaScript中,如果不给构造函数传递参数,则可以省略后面的那一对圆括号。也就是说在像前面这个示例一样不传递参数的情况下,完全可以省略那对圆括号(但并不推荐这种做法)
var o = new Object; //有效,但不推荐
仅仅创建一个Object实例其实并没有什么用处,但关键是要理解一个重要思想:即在JavaScript中,Object类型是所有其它实例的基础,在讲继承的时候我们已经讲到:所有其它类型均继承自Object。也就是说Object类型所具有的任何属性和方法,同样也都存在于更具体的对象中。
Object的每个实例都具有如下属性和方法:
- Costructor:保存着用于创建对象的函数,对于上面的例子而言,构造函数(constructor)就是Object()
- hasOwnProperty(propertyName):用于检查给定的属性在当前的实例对