使用来自另一个函数的javascript变量
可能重复:使用来自另一个函数的javascript变量,javascript,Javascript,可能重复: 我的网页中集成了一个网络电话,当来电时,javascript函数会记录来电者的号码(例如01234 123456),并将其保存为变量inCallingNum 我需要在另一个函数中使用这个变量,该函数将信息发送到php页面并将其存储在数据库中 可以从另一个函数访问javascript变量吗?如果不可以,最简单的方法是什么 编辑:这是我的代码,它当前捕获inCallingNum变量 function webphonetojs(varr) {
我的网页中集成了一个网络电话,当来电时,javascript函数会记录来电者的号码(例如
01234 123456
),并将其保存为变量inCallingNum
我需要在另一个函数中使用这个变量,该函数将信息发送到php页面并将其存储在数据库中
可以从另一个函数访问javascript变量吗?如果不可以,最简单的方法是什么
编辑:这是我的代码,它当前捕获inCallingNum变量
function webphonetojs(varr)
{
var eventNotify = '' + varr;
//alert("eventNotify = "+eventNotify);
displaystatus('WEBPHONE SAY: '+eventNotify);
initcheck();
var chanelStat = applethandle.API_GetStatus(1); // get line status
var chanelStatus = chanelStat.replace(/\s+/g,'');
if (chanelStatus == 'Ringing')
{
var incomming = eventNotify.slice(eventNotify.lastIndexOf(",")+1, eventNotify.length);
if (incomming == '2')
{
var inCallingNum = eventNotify.split(",", 4); inCallingNum = inCallingNum.toString();
inCallingNum = inCallingNum.slice(inCallingNum.lastIndexOf(",")+1, inCallingNum.length);
displaystatus('CALLER IS: '+inCallingNum);
}
}
}
如果在全局范围内声明变量并在两个函数中使用它,则可以访问该变量。这取决于变量的范围
inCallingNum
如果它具有公共作用域,则您可以在其他功能中访问它。如果它有私有作用域,那么您需要将其更改为public(或global)或向其添加getter方法。当然可以。您只需将值存储在函数范围之外的变量中。因此,您可以通过将“var varName=”;”放在函数的大括号外来声明一个全局javascript变量,并使用该变量。免责声明:填充全局范围是一个坏主意。最好从正在使用和使用的方法返回变量。话虽如此,这就是你如何把它放在全球范围内
var bVar = '';
function a() {
alert(bVar);
}
function b() {
bVar = 'B just used it';
}
b();
a();
由于
bVar
在全局范围内,任何方法现在都可以访问它。我个人讨厌使用全局变量,并尽可能避免使用它们,但没有看到任何OP的代码,我想你的解决方案是最可行的!:)嗨,s-buzz,我已经用我正在使用的代码更新了我的问题。您能告诉我需要移动/更改什么才能全局访问它吗?声明var inCallingNum声明函数之前,请执行代码>。在函数内部,在不使用var
关键字的情况下使用它。如果你这样做,你可以使用全局varinCallingNum
,而不是本地变量。非常感谢,效果很好:)我想我需要尝试更好地学习javascript。这是一个纯javascript问题,请重新标记。请不要使用虚假标签使您的问题更为明显。