0

我尝试在函数内操作变量。但是一旦我退出函数,它似乎忘记了这些值,即使变量是在函数之外声明的。

基本代码:

var posts = {};                

            // Perform a data request
            // skjutsgruppens-page
            $.oajax({
                url: "https://graph.facebook.com/197214710347172/feed?limit=500",
                    *SNIP*
                    success: function(data) {
                    $.extend(posts, data);
                }
            });


            // Gruppen
            $.oajax({
                url: "https://graph.facebook.com/2388163605/feed?limit=500",
                *snip*
                success: function(data) {
                    $.extend(posts, data);
                }
            });

oajax 从 facebook 检索数据。我想创建一个包含两种 oajax 方法的数据的变量。

实际代码:http ://eco.nolgren.se/demo/resihop/#

4

1 回答 1

2

问题很可能是该success函数在未来的任意时间执行——除非您在知道该函数已执行posts后专门访问,否则您将收到未定义的结果,完全取决于函数和访问时间。success

最好的方法是通过在success函数内部做必要的工作来正确处理这个问题,或者使用像jQuery的.whenfunction这样的东西。

于 2012-06-05T22:51:32.820 回答