过去我再次遇到过这个问题,我使用了全局变量,但我想知道还有什么其他方法可以处理它。
代码来自我目前正在玩的一个 html5 画布教程。
var x = 150;
var y = 150;
var dx = 2;
var dy = 4;
var ctx;
function init() {
ctx = $('#canvas')[0].getContext("2d");
return setInterval(draw, 10);
}
function draw() {
ctx.clearRect(0,0,300,300);
ctx.beginPath();
ctx.arc(x, y, 10, 0, Math.PI*2, true);
ctx.closePath();
ctx.fill();
x += dx;
y += dy;
}
init();
我能做些什么来避免使用全局变量?