方法返回undefined

时间:2015-05-29 11:16:04

标签: javascript jquery global-variables

我在for循环中有一段JS代码:

window.gamesParse = {
    days: days,
    dates: dates,
    times: times,
    series: series,
    homes: homes,
    aways: aways,
    channels: channels
}

var image = $.get("assets/images/" + gamesParse.aways[i] + ".png");
if (image.status !== 404) {
    console.dir(image);
} else {
    console.dir(image);
}

现在,它返回具有status属性的正确对象。但是,如果我将image更改为image.status(或任何其他属性或方法),则会返回undefined。
这是正常的吗?如何从那里访问status属性?

2 个答案:

答案 0 :(得分:1)

这是正常的,因为$.get是异步的,在当前代码中表示加载数据。但是在下一行,您会询问图像的状态,实际上仍在加载。您需要做的是等待图像加载,然后检查代码。类似的东西:

$.get("assets/images/" + gamesParse.aways[i] + ".png", function(image) {
    // here image can have status
});

答案 1 :(得分:0)

foo未定义,因为它不在get动作中,尝试将其置于回调函数中。像这样:

if

检查 docs