0

ajax 呼び出しを介して従業員のリストを取得する JavaScript コードがあります。

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: 

ajax-callの外でemployees_jsonが空なのはなぜですか?
それとも見えないタイプを作ってしまった!?!

4

1 に答える 1

0

console.log は function(response) の前に実行されます。

ログはこのようなものではありませんか?: that: this: [object オブジェクト],[object オブジェクト],[object オブジェクト],[object オブジェクト],[object オブジェクト],[object オブジェクト],[object オブジェクト],[object オブジェクト],[object オブジェクト], [対象オブジェクト]、[対象オブジェクト]、[対象オブジェクト]

javascript は 1 スレッドですが、コールバック関数がいつ実行されるかはわかりません。コードを調整する必要があります。

于 2013-02-20T15:14:01.880 に答える