javascript:访问父函数的所有变量

标签 javascript function variables scope

我决定创建一个从 funcA 调用的 funcB 函数。我希望 funcA 中的所有变量在 funcB 中可用,以便 func B 可以更改这些变量。 如何修改下面的代码以满足我的要求?我怀疑通过它传递所有变量是唯一可能和最好的方法。

function funcB(){
alert(var1);//how to make it alert 5
alert(var20);//how to make it alert 50
}
function funcA(){
var var1=5;
...
var var20=50;
funcB();
}

最佳答案

var obj = {
    one : "A",
    two : "B",
    fnA : function() {
        this.fnB(); // without fnB method result will be displayed as A B, with fnB as C D
        console.log(this.one + " " + this.two);
    },
    fnB : function() {
        this.one = "C";
        this.two = "D";
    }
};

obj.fnA();

this关键字引用obj对象

您可以在其中定义带有属性和方法的对象。使用方法,所有变量都可以按照您的意愿进行操作,从这个示例中使用 fnB 我正在更改从 fnA 方法显示的属性值

JSFiddle

关于javascript:访问父函数的所有变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22508542/

相关文章:

javascript - jQuery on mouseEnter 背景颜色淡入淡出

javascript - 用于响应式 2 元素 slider 的 HTML/CSS(/JS?)

sql-server - Oracle 从函数插入

c++ - 从 C++ 中的多行 txt 文档中读取数字

Javascript 代码无法正常工作并为另一部分代码带来值(value)

javascript - 是否有一个 Javascript 事件可以根据用户输入不断更新 DOM?

javascript - JavaScript 中 "decorator function"和 "decorator design pattern"有什么区别?

C++ ...当所有参数都有默认值时

javascript - onchange javascript 变量

java - 是否可以将任何类型的输入传递给方法并确定给出的输入类型?