添加原型函数而不在每行中使用 .prototype=

Add prototype function without using .prototype= in each line

我想知道是否有任何方法可以在不在每行中使用 .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 () {
}

谢谢

据我了解,您想立即将一组新方法从一个对象应用到原型对象。

您可以通过 Object.assign():

Object.assign(Fruit.prototype, {
    move: function () {
    },

    fall: function () {
    }
});

这会将第 2 个参数到第 n 个参数的所有属性添加到传递给 assign() 的第一个参数中的对象。