Javascript 用于访问变量的var关键字scope和函数名

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)上

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,这对我来说很好。。。