全局变量保持空白

时间:2013-02-20 15:07:17

标签: javascript

我有一段javascript代码,我通过ajax调用检索员工列表。

var employees_json = '';

Ajax.callbackAsync('getEmployees', ['2627016'],
    function(response){
        employees_json = response;

        console.log('this: '+ employees_json);
    },
    function(error){
        alert('Error while retrieving employees: '+ error);
    }
);

console.log('that: '+ employees_json);

(2627016是branch_id)

控制台上的输出:

this: [object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
that: 

为什么employees_json在ajax-call外面是空的?
或者我做了一个我看不到的类型!?!

1 个答案:

答案 0 :(得分:0)

你的console.log在函数(响应)之前执行。

日志不是这样的吗? :     那:     this:[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object ],[对象对象],[对象对象]

javascript是1个线程,但你永远不知道回调函数何时运行。 所以你必须调整你的代码。