我的网页中集成了一个网络电话,当有来电时,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);
}
}
}
答案 0 :(得分:2)
如果在全局范围内声明变量,则可以访问该变量,只需在两个函数中使用它。
答案 1 :(得分:1)
免责声明:填充全局范围是一个错误的想法。最好从您正在使用的方法返回变量并使用它。话虽如此,这就是你把它放在全球范围内的方式
var bVar = '';
function a() {
alert(bVar);
}
function b() {
bVar = 'B just used it';
}
b();
a();
由于bVar
属于全局范围,因此任何方法现在都可以访问它。
答案 2 :(得分:0)
这取决于变量inCallingNum
的范围。
如果它具有公共范围,那么您可以在另一个功能中访问它 如果它具有私有范围,那么您需要将其更改为公共(或全局)或向其添加getter方法。
答案 3 :(得分:0)
当然可以。您只需将值存储在函数范围之外的变量中。所以你通过输入“var varName ='';”声明一个全局javascript变量在函数的大括号之外并使用该变量。