如果你这样做
Spaceship.prototype = GameObject.prototype;
然后它们都引用同一个对象,因此,您最好将中的所有内容都包含在内GameObject
,如果您向中添加了一些内容Spaceship.prototype
,则该对象也将添加到其中GameObject.prototype
。您可以通过Spaceship.prototype
在分配后添加一些内容来轻松对其进行测试。
至于
Spaceship.prototype = new GameObject();
Spaceship.prototype = Object.create(GameObject.prototype);
这里使用的Object.create
功能归结为:
Object.create = function( proto ) {
function f(){}
f.prototype = proto;
return new f;
};
现代浏览器已经具有该功能。