function就是一个class如:
<script>
function ClassName(num){
this.num=num;
this.go=go
}
function go(){
alert(this.num)
}
var t=new ClassName(123)
t.go()
</script>
<script>
function ClassName(num){
this.num=num;
this.go=go
}
function go(){
alert(this.num)
}
var t=new ClassName(123)
t.go()
</script>
你是不是这意思?
如果你直接在函数内部使用变量那么它一定是全局的,使用var后就是函数的局部变量,可以不声明直接用,但是你要确保以后用的时候不会发生混乱。
不知你是不是问这个,js不会告诉你那个变量没有声明,如果你没有声明它就为你声明一个,是全局的,函数的argument肯定是局部的,就算你有一个全局变量和它同名也没有关系,它值当它是局部的,
function ClassName(num){
this.num=num;
}function go(a){
alert(a+this.num)
}ClassName.prototype.go = go;var t=new ClassName(123)
t.go(3)
</script>