我有一个函数 setStatus ,我这样称呼:
$.getJSON( '/api/v1/status', setStatus );
该功能如下所示:
function setStatus(data) {
status = data;
console.log(data);
console.log(status);
timer = setInterval(updateStatus, 1000);
}
当我运行它时,控制台在包含我的数据的第一行打印一个漂亮的对象,但它为第二行打印 [object Object] 。稍后我的 updateStatus 会尝试使用这些数据来计算正常运行时间值:
function updateStatus() {
var table = $('#status');
table.find('#uptime').text(calculateUptime(status.bootTime*1000));
该表显示了一堆NaN,因为变量“status”为空。我做错了什么?
答案 0 :(得分:0)
您是否在某个更高的范围内正确声明了status
变量?
你应该有一个
var status = null;
在全局范围内的某个位置,或者在定义所述函数的闭包内部。 这有帮助吗?