我想知道是否有任何方法可以添加原型函数而无需在每一行中使用.prototype=
这是当前代码:
Fruit= function( x, y, settings) {
Phaser.Sprite.call(this,game,x,y, 'fruit');
game.add.existing(this);
};
Fruit.prototype.basic= function() {}
Fruit.prototype = Object.create(Phaser.Sprite.prototype);
Fruit.prototype.constructor = Fruit;
//I find that writing function in the following way is very hard to focus and find what I need immediately
Fruit.prototype.move= function() {
};
Fruit.prototype.fall= function() {
};
我想以此方式编写代码,但我需要继承原始的Phaser原型。在我仍然可以继承Phaser.Sprite.prototype
的同时,我可以通过以下方式编写代码吗?
Fruit.prototype = {
move: function () {
},
fall: function () {
}
}
只要我可以用这种方式写就可以了:
move: function () {
},
fall: function () {
}
谢谢
答案 0 :(得分:2)
据我所知,您想一次将一组新方法从一个对象应用于一个原型对象。
您可以通过Object.assign()
进行此操作:
Object.assign(Fruit.prototype, {
move: function () {
},
fall: function () {
}
});
这会将第二个参数到第n个参数的所有属性添加到传递给assign()
的第一个参数中的对象。