在javascript的不同函数中使用JSON对象

在javascript的不同函数中使用JSON对象,javascript,Javascript,我有一个javascript,它解析服务器数据并将其存储在一个变量中。我只能在一个函数中使用该变量,但不能在多个函数中使用,请查找下面的javascript代码 函数serverData(命令,参数){ log('command为'+command+'param为'+param'); 如果(!命令){ log('未收到命令,未调用服务器'); 返回; } var url='ProgramSetting.cgi?command='+command; 如果(参数){ url+='&'+param;

我有一个javascript,它解析服务器数据并将其存储在一个变量中。我只能在一个函数中使用该变量,但不能在多个函数中使用,请查找下面的javascript代码

函数serverData(命令,参数){
log('command为'+command+'param为'+param');
如果(!命令){
log('未收到命令,未调用服务器');
返回;
}
var url='ProgramSetting.cgi?command='+command;
如果(参数){
url+='&'+param;
}
var xhttp=newXMLHttpRequest();
xhttp.open('GET',url,true);
setRequestHeader('Content-Type','application/json');
xhttp.send();
xhttp.onreadystatechange=函数(){
if(this.readyState==4&&this.status==200){
var data=JSON.parse(this.responseText);
负责人(命令、数据);
}
};
}
函数响应句柄(命令,jsonData){
if(!jsonData){
log('Json from server not defined!!!');
返回;
}
开关(命令){
案例“集合”:
如果(jsonData.result=='success'){
document.getElementById('info').innerHTML='info:Committed successfully!';
}否则{
if(jsonData.options&&jsonData.options.length>0){
var failedOptions='';
对于(var i=0;i

在上面的脚本中,我可以在
responseHandler()
函数中使用
jsonData
,但不能在``custom()中使用`函数。

你能提供一些运行版本的fiddle来显示你的问题吗?我的第一个猜测是responseHandler方法应该是异步的。运行版本的fiddle会更好。关于你正在显示的代码,没有任何东西表明你对
自定义(jsonData)
内部
responseHandler
的调用原则上不起作用。因此,请简化您的代码,并证明它不是。另外,在一个重要的技术说明中,JSON是一个字符串,而且只是一个字符串。根据定义,它不能是其他任何东西,需要解析才能使用。一旦解析它,它就变成了正常的JS数据结构,不再是JSON。在XHR代码中正确地称它为
data
,在两个函数中不要称它为
jsonData
:它仍然是
data
,而不是“json”。我的问题很简单,我的responseHandler(command,jsonData)函数工作正常,但我的自定义(jsonData)函数不工作。我得到的错误是“UncaughtTypeError:无法读取未定义的属性'MINLEN_RANGE'”