我是JavaScript的新手。我想开发一个在Blackberry上运行的画布动画。为此,我想使用HTML5和JavaScript。我想创建以下功能。 __ function drawCircle()。圆的中心将是画布的中心(画布的大小将是窗口的大小),半径将由用户输入。到此为止,我应该在哪里声明画布以分配圆圈的中心?
__ function draw()将绘制形状的所有函数。然后将在init函数中调用。
__ function init()。这将以一组间隔绘制形状。
我应该在哪里声明:
var canvas = document.getElementById()
var context = canvas.getContext()
canvas.width = windows.innerWidh
答案 0 :(得分:3)
可以从代码的其余部分访问全局范围中定义的任何javascript变量(即不在函数或类中)。
var testVariable = "test";
function test() {
console.log(testVariable);
}
test();
或者(并且它被认为是不好的做法)在全局范围之外声明没有var
修饰符的变量会将其置于全局范围内:
function test() {
testVariable = "test";
}
test();
console.log(testVariable);
修改强>
正如评论正确指出:
全局变量和函数是 很少需要。使用全局变量可能 导致命名冲突 javascript源文件和原因代码 打破。因此,它是一个 封装的好习惯 单个全局内的功能 namespace ...最简单的方法是创建一个 单个全局对象和分配 该对象的属性和方法。
创建命名空间:
var MyLib = {}; // global Object cointainer
MyLib.value = 1;
MyLib.increment = function() { MyLib.value++; }
MyLib.show = function() { alert(MyLib.value); }
MyLib.value=6;
MyLib.increment();
MyLib.show(); // alerts 7
以下是what a namespace is的说明。