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

标签 javascript extend phaser-framework

我想知道是否有任何方法可以在不在每一行中使用 .prototype= 的情况下添加原型(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原型(prototype)。我可以通过以下方式编写代码,同时仍然继承自 Phaser.Sprite.prototype 吗?

Fruit.prototype = {
    move: function () {
    },
    fall: function () {
    }
}

只要我能这样写就可以了:

move: function () {
},

fall: function () {
}

谢谢

最佳答案

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

您可以通过 Object.assign() 执行此操作:

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

    fall: function () {
    }
});

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

关于javascript - 添加原型(prototype)函数而不在每行中使用 .prototype=,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53995614/

相关文章:

javascript - 单击处理程序到单个孤立的 Sprite

javascript - 找不到变量 : Promise in Phantomjs

html - 在 CSS/HTML 中扩展我的导航栏的边(就像标题一样)

Scala:使用构造函数参数扩展具体类

javascript - 当网址不为空时歌曲无法播放

javascript - 移相器 3 : destroying all instances of a sprite

javascript - 计算并显示价格等级 Javascript 的折扣百分比

javascript - AJAX - 带有嵌套的 promise

javascript - IE8 的 Google map API 问题

ruby - 在模块中使用 extend self