这是我第一次在JavaScript中使用原型,我可以使用一些帮助。
我有一个类似
的课程 function snakegame(C, C_w, C_h, Ls, spd)
{
// .... bunch of other stuff ...
this.boxCollision = function(A, B)
{
return A.x == B.x && A.y == B.y;
}
// ... bunch of other stuff here too ...
}
我希望对boxCollision
函数进行原型化,即在snakegame
内定义它,然后在外部编写实现。我试过了
function snakegame(C, C_w, C_h, Ls, spd)
{
// .... bunch of other stuff ...
this.boxCollision(A, B);
// ... bunch of other stuff here too ...
}
snakegame.prototype.boxCollision = function(A, B)
{
return A.x == B.x && A.y == B.y;
}
但这没有用。
我也尝试为原型编写this.boxCollision(var, var)
,但这也不起作用。这样做的正确方法是什么?
答案 0 :(得分:-1)
你会想做这样的事情:
var SnakeGame = function () {
//Constructor code
};
SnakeGame.prototype = new Object(); //Or what ever object you are going to inherit from
SnakeGame.prototype.boxCollision = function() {
//code
};
SnakeGame.prototype.otherFunction = ...
然后使用它执行此操作:
var mySnakeGame = new SnakeGame();
mySnakeGame.boxCollision();
此外,对你的对象使用大写是很重要的,SnakeGame不是snakegame。这是惯例,将帮助您保持正确。
如果您想了解有关JavaScript原型设计的更多信息,此site还有更多信息。