Javascript: 如何从多个原型中调用一个函数?
Javascript: How to call a function from multiple prototypes?
美好的一天,
我正在使用移相器 3 和 javascript 进行编码,然后尝试像这样 classes:
class gameScene extends Phaser.Scene {
create()
{
// add inputs
this.cursors = this.setDirectional('W', 'A', 'S', 'D');
}
}
我尝试通过添加
来制作原型
gameScene.prototype = {
setDirectional:
function (setUp, setDown, setLeft, setRight) {
// some code
})
},
someOtherMethod:
function(){
// some other code
}
}
但它会为 setDirectional() 函数产生 'not a function' 错误。当我分离原型时它似乎有效:
gameScene.prototype.setDirectional = function (setUp, setDown, setLeft, setRight){
// code
}
谁能解释为什么会这样?在使用分组原型格式时,是否有从 class 中调用 setDirectional() 函数的解决方法?
提前致谢。
将 object
分配给 Class.prototype
不是正确的行为。但是,您可以将新的 属性 添加到 Class.prototype
并将您的方法存储在此处。
class gameScene {
create() {
return "create function"
}
}
gameScene.prototype.methods = {
setDirectional: function(){
return "test"
}
}
console.log(gameScene.prototype.methods.setDirectional())
美好的一天,
我正在使用移相器 3 和 javascript 进行编码,然后尝试像这样 classes:
class gameScene extends Phaser.Scene {
create()
{
// add inputs
this.cursors = this.setDirectional('W', 'A', 'S', 'D');
}
}
我尝试通过添加
来制作原型gameScene.prototype = {
setDirectional:
function (setUp, setDown, setLeft, setRight) {
// some code
})
},
someOtherMethod:
function(){
// some other code
}
}
但它会为 setDirectional() 函数产生 'not a function' 错误。当我分离原型时它似乎有效:
gameScene.prototype.setDirectional = function (setUp, setDown, setLeft, setRight){
// code
}
谁能解释为什么会这样?在使用分组原型格式时,是否有从 class 中调用 setDirectional() 函数的解决方法?
提前致谢。
将 object
分配给 Class.prototype
不是正确的行为。但是,您可以将新的 属性 添加到 Class.prototype
并将您的方法存储在此处。
class gameScene {
create() {
return "create function"
}
}
gameScene.prototype.methods = {
setDirectional: function(){
return "test"
}
}
console.log(gameScene.prototype.methods.setDirectional())