Javascript函数调用不能正常运行

下面两种格式的代码,第二个就改成函数调用的形式,但是就不能运行,这是什么原因了,请大神们指导
window.onload=initAll;
function initAll(){
if(document.getElementById){
for(var i=0;i<24;i++){
var newNum=Math.floor(Math.random()*75)+1;
document.getElementById("square"+i).innerHTML=newNum;
}

}
else{
alert("error!");
}
}

window.onload=initAll;
function initAll(){
if(document.getElementById){
for(var i=0;i<24;i++){
test(i);
}

}
else{
alert("error!");
}
}
function test(this){
var newNum=Math.floor(Math.random()*75)+1;
document.getElementById("square"+this).innerHTML=newNum;
}

第一行改下:window.onload=initAll();

修改了还是不行。。。

要么是你的方法名字和前面调用的地方不一样,要么就是找不到你的这个this参数和square拼接起来对应的id

我找到原因了,因为this 是保留字,所以不能作为参数用

this 是关键字,,肯定不能当变量的