alarmInputData = {}; //定义的全局变量
function alram_getCfgEx_success_callback(data)
{
//alert("recv: "+ data);
var msg = JSON.parse(data);
alarmInputData = msg.result.args;
var day = new Date();
day = day.getUTCDay();
setSelectedByValue("alramInput_date",day);
loadsetAlarmTimeVal(alarmInputData.inputs[0].timetable.timeSlice[day]);
}
在使用时用alert()可以显示出值,但是执行后面的字符串相加的会报 TypeError: alarmInputData.inputs[k] is undefined 的错误。
alert(alarmInputData.inputs[k].timetable.timeSlice[i][j].startHour);//会打印出值
timeStr[j] = '"startHour":'+'"'+alarmInputData.inputs[k].timetable.timeSlice[i][j].startHour+'"';
看看数组的数量是否满足k
你下面2句是在alram_getCfgEx_success_callback里面的还是什么?看你代码alram_getCfgEx_success_callback是异步获取数据后的回调函数,如果你后续代码不在这个函数里面,会有问题,因为异步获取数据有个时间差,你直接使用数据不一定返回执行了alram_getCfgEx_success_callback进行变量的赋值
alert(alarmInputData.inputs[k].timetable.timeSlice[i][j].startHour);//会打印出值
timeStr[j] = '"startHour":'+'"'+alarmInputData.inputs[k].timetable.timeSlice[i][j].startHour+'"';