将局部变量从一个函数传递到另一个函数
Posted
技术标签:
【中文标题】将局部变量从一个函数传递到另一个函数【英文标题】:Passing a local variable from one function to another 【发布时间】:2012-05-21 17:22:24 【问题描述】:我是 javascript 的初学者,想问以下问题:我有两个简单的函数,想知道是否有任何方法可以将变量值从一个函数传递到另一个函数。我知道我可以将它移到函数之外以便在其他函数中使用,但只需要知道如何拥有一个局部变量并在我的第二个函数中使用它。这可能吗?如何实现?
这里有一些代码:
window.onload = function show()
var x = 3;
function trig()
alert(x);
trig();
问题是:如何从我的第二个函数trig
访问变量x
(在函数show
中声明)?
【问题讨论】:
你问的不是很清楚......你是从另一个函数中调用一个函数吗?贴一些示例代码。 如果你得到你想要的信息,不要忘记将答案标记为已接受...... 【参考方案1】:第一种方法是
function function1()
var variable1=12;
function2(variable1);
function function2(val)
var variableOfFunction1 = val;
// 然后你将不得不对变量 1 使用这个函数,所以它并没有太大帮助,除非你想要这样做。
第二种方法是
var globalVariable;
function function1()
globalVariable=12;
function2();
function function2()
var local = globalVariable;
【讨论】:
我使用了第二种方法,它奏效了。我来这个网站不是为了“借”代码。我想确切地了解发生了什么,这样我就可以看到我的逻辑中的谬误在哪里。如果有人可以进一步解释,请做。在第二种方式中,我看到的是一个被声明的全局变量,一个为该全局变量分配值 12 的函数,然后在一个函数中调用一个函数以将两个函数连接在一起。然后是一个能够将全局变量值存储到局部变量中的函数。是这样吗?? @user2585548 第一个完全符合问题的要求。它创建一个局部变量并将其值传递给另一个函数。第二个函数创建一个全局变量并在第一个函数中设置一个值。当从第一个函数调用第二个函数时,使用全局变量的值(在第一个函数中设置)声明一个局部变量。【参考方案2】:添加到@pranay-rana 的列表:
第三种方法是:
function passFromValue()
var x = 15;
return x;
function passToValue()
var y = passFromValue();
console.log(y);//15
passToValue();
【讨论】:
谢谢。我遵循了这个方法。对我来说效果很好。【参考方案3】:您可以很容易地使用它在另一个函数中重用变量的值。
// Use this in source
window.var1= oEvent.getSource().getBindingContext();
// Get value of var1 in destination
var var2= window.var1;
【讨论】:
以上是关于将局部变量从一个函数传递到另一个函数的主要内容,如果未能解决你的问题,请参考以下文章