JavaScript从匿名函数读取私有变量
JavaScript read private variable from anonymous function
我需要从匿名函数访问一个私有变量。此匿名函数由以下内容设置:
coolObject = new (function(){
this.public = "public";
var private = "secrets";
// General functions here, no getter or setter for private
})();
通过执行console.log(coolObject.public)
或coolObject.public = "newValue"
,我可以轻松地读写coolObject.public
,但如何对私有变量执行同样的操作?另一件事是,我不能向构造函数添加代码,coolObject
最初总是这样定义的。
总之,有没有一种方法可以从JavaScript中的匿名函数访问私有变量?如果有,如何访问?
编辑:我尝试过通过coolObject.getPrivate = function(){return private;};
创建getter和setter,但这不起作用。
否如果不更改现有代码,这是不可能的。
正如您所提到的,您不能更改代码,也不能读取私有变量。将变量设为私有变量的原因是确保您不能从范围外读写它。如果这一切都是可能的,那么私有变量的意义和原因就消失了。
相关文章:
- JavaScript从匿名函数读取私有变量
- 使用JS/NodeJS测试并读取文件中的变量
- 如何从ajax成功回调函数中读取javascript变量
- 当尝试使用ajax读取文件时,变量返回undefined
- 可以't读取本地存储的远程变量的内容
- 如何使用Selenium读取javascript变量
- 如何在不赋值数组变量的情况下读取数组数据
- 无法读取由变量引起的未定义的属性
- 无法通过rest api读取json变量
- 正在读取JS变量
- 从外部javascript文件读取var并将其转换为php变量
- 从变量中读取html文本
- 可以't让JavaScript将ID读取为变量名
- 使用Adobe ExtendScript(ExtJS)读取变量并旋转形状
- 表读取最后一个变量
- Java脚本将URL的响应读取到变量中
- C#WebBrowser控件-使用DOM创建和修改javascript变量,然后使用Applet读取它
- 如何使用 Java 发送和读取第三方 JavaScript 变量
- 声明的变量读取为 null
- 将包含字符串的javascript变量读取到另一个文件中