所以我的问题是,我用两种方法在 javascript 中创建了一个基本对象,但是当我调用它们时,chrome 的调试器说它们不存在。但问题是,如果我在对象内部调用任何方法,它们不会出现任何问题,但在对象外部我会得到:
未捕获的类型错误:对象 #<'player> 没有方法 'set'
(注意:添加了播放器中的 ' 否则 Stack Overflow 会修剪 '播放器')
这是代码:
function player() {
this.x=25; this.y=1;
function set(setx,sety) {
this.x = setx;
this.y = sety;
document.getElementById('x'+this.x+'y'+this.y).style.backgroundColor='000000';
}
function move(movex,movey) {
document.getElementById('x'+this.x+'y'+this.y).style.backgroundColor='';
set(movex,movey);
}
}
那在标题中,这是正文中的javascript代码:
var x = 25;
mainPlayer = new player();
mainPlayer.set(x,1);
var interval1 = setInterval(function() { x--; mainPlayer.set(x,1); },100);