为什么是undefined,这跟我想的一点都不一样啊。
我想在一个7*7的格子里随机显示8张图片,要怎么弄啊。。。。。
<!DOCTYPE html><html><head><title>Game</title><script type="text/javascript" src="xxxx.js"></script><meta http-equiv="Cache-Control" content="no-cache"/></head><body onload="draw();"><canvas id="canvas" width="800" height="800"></canvas></body></html>
function draw(){ var canvas=document.getElementById("canvas"); var context=canvas.getContext("2d"); var x,y,i,j,k; var a=Array("0001.png","0002.png","0003.png","0004.png","0005.png","0006.png","0007.png","0008.png"); var img=new Image(); for(k=0;k<8;k++){ img.src=a[k]; img.onload=function(){ i=Math.random()*7; j=Math.random()*7; x=114*i+21; y=114*j+21; alert(a[k]); //为什么a[k]值为undefined未定义?? context.drawImage(img,x,y); } }}alert(a[k]); //为什么a[k]值为undefined未定义??
------解决方案--------------------
至于前面说的Array必须new的。。。不new也一样,可以去mozilla看js标准文档