我以某种方式认为您可以将函数定义为全局变量并访问其内部变量。
例:

var func = function(){
    var connected = true;
}

console.log(func.connected);


但是,它仍然显示为“ undefined”。
我认为对这样的某些变量进行“命名空间”会很有趣。

我不想使用对象/列表/字典(您更喜欢称呼它们),因为您可以delete这些元素。

最佳答案

这是不可能的。
实际上,这甚至没有任何意义。
每次调用函数都会产生一组单独的局部变量。

即使可以delete,也应使用对象创建名称空间。

如果愿意,您还可以开设一门课程:
请注意,您需要创建该类的实例:

function MyClass() {
    this.connected = true;
}

var myInstance = new MyClass();
console.log(myInstance.connected);


但是,不应使用类来创建单例名称空间。无关紧要。

相反,您应该写

var myNamespace = { connected: true };

console.log(myNamespace.connected);

关于javascript - 在JavaScript中访问全局函数变量,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4547003/

10-09 05:28