首先这里是JavaScript的语法规则。
其次在调用function()函数的时候参数时外部传入的。在传入之前就已经被声明了。没必要在函数参数里声明。
如果想要在函数里用新的参数
function(参数)
{
var 参数名/*创建局部变量*/
}
test函数里面的参数只要写好是什么名字,参数本身是外面传进来的,在()里面写,只是外部引用,在内部使用的时候重新命名而已。再加var的话就等于是重新定义了,和原来的“引用”的本意不符。 因为是弱类型,而函数调用的时候一定要指定类型调用。在弱类型下面,引用的话就可以继承原来被调用对象的类型。用C语言的解释就是,你如果被调用的对象是int a型,而你定义函数的时候用了(float a);那么必然报错。弱类型为了避免这类的错误就不能在函数里面写var。你如果知道你被调用的对象是什么类型,那么你可以在里面直接指定类型。但是不能用var这样不定的声明方式。