Javascript 用于访问变量的var关键字scope和函数名
prop1如何在功能体之外仍然可以访问Javascript 用于访问变量的var关键字scope和函数名,javascript,var,Javascript,Var,prop1如何在功能体之外仍然可以访问 函数myFunc(){ var prop1=10; this.myChildFunc=函数(){ 警报(“prop1的值:+prop1”); } } myFunc(); myFunc.prop1=20;//如何使用函数名仍然可以访问prop1?和功能范围之外? 警报(“prop1:+myFunc.prop1”)函数是对象,因此它们可以有属性,但这些只是属性,仅此而已 因此,您在函数中声明的变量(var prop1)与函数对象(myFunc.prop1)上
函数myFunc(){
var prop1=10;
this.myChildFunc=函数(){
警报(“prop1的值:+prop1”);
}
}
myFunc();
myFunc.prop1=20;//如何使用函数名仍然可以访问prop1?和功能范围之外?
警报(“prop1:+myFunc.prop1”)代码>函数是对象,因此它们可以有属性,但这些只是属性,仅此而已
因此,您在函数中声明的变量(var prop1
)与函数对象(myFunc.prop1
)上的属性无关。他们只是同名而已
要了解这一点,让我们看一下:
函数myFunc(){
var prop1=10;
console.log(prop1);
}
myFunc()//10
console.log(myFunc.prop1)//未定义-无此类属性
myFunc.prop1=20//myFunc.prop1现在是20
myFunc()//变量仍然是10
console.log(myFunc.prop1)//属性仍然是20
这可以帮助您myFunc.prop1
与var prop1
ohkk不同。所以当我写myFunc()时,它是对函数的调用,当我写myFunc时。这意味着我可以访问对象myFunc@FZs,在哪个主题下我可以了解更多信息?例如@Garvit,这对我来说很好。。。