1

こんにちは、私は次のものを持っています。

var g = new Array() ; 

$.getJSON(google, function(data) {
  var i = 0 ; 
  $.each(data.items, function() {
    var obj = new res(i, this.title, this.snippet, this.formattedUrl, 0) ; 
    g.push(obj) ; 
    i=i+1 ;
  });
});

非同期関数の外で配列にアクセスできるようにする必要があります。

4

2 に答える 2

3

グローバルの設定方法に関する部分に厳密に答えると、これを行う一般的な方法の 1 つは、次のようにアプリの名前空間を作成することです。

window.App = {}; // or just App = {};

そしてそこにグローバルなものを入れます

App.g = [];

これで、どこからでも名前空間にアクセスできるようになりました。

グローバル変数を変更する未処理のリクエストがある可能性がある場合は、引き続き注意する必要があります。

于 2013-03-12T16:09:03.053 に答える
1

.data()グローバル変数よりも単純なを使用することもできます。

それが機能する方法は、次のような要素を設定することです:

$('body').data('g', mydata);

どこでも、次のように取得します。

$('body').data('g');

もちろん、 だけでなく、どの要素でも可能bodyです。

于 2013-03-12T16:09:53.183 に答える