Bagaimana untuk menerima dan mengumpul objek yang diluluskan daripada fungsi lain dalam JavaScript?
P粉413704245
P粉413704245 2023-09-15 13:12:20
0
1
651

Saya mempunyai fungsi, mari kita panggil ia GetData(). Saya mendapat data daripada pertanyaan dalam fungsi lain dan menjalankan panggilan ajax untuk mengisi data. Setelah operasi ini selesai, saya menghantar data ke fungsi lain, mari kita panggil PlaceData(). Setiap panggilan ajax ke GetData() meletakkan data dalam objek. Saya kemudian menghantar setiap objek ke PlaceData() dan saya ingin mengumpul objek ini ke dalam tatasusunan dalam PlaceData() melalui kaedah push(), tetapi setiap kali ia hanya menambah tatasusunan baharu dan bukannya menghantar yang semasa Objek dikumpulkan bersama , jadi saya hanya mendapat objek individu, bukan koleksi. Bagaimanakah saya boleh mengumpulnya ke dalam tatasusunan?

Jadi inilah contoh kod yang saya gunakan:

function GetData(query) {
    var json = "";
    var api_url = ('https://jsondata.site?conn={conn}&query={query}');
    $.ajax({async: false; url: api_url, method: "GET"}).done(function(data){
        json = JSON.parse(data);
    });
    PlaceData(json);
};

function PlaceData(data) {
    var objCollect = [];
    objCollect.push(data);

    console.log(objCollect);
};

Saya mahu objCollect[] menyimpan semua objek yang dihantar, tetapi sebenarnya saya hanya mendapat tatasusunan baharu yang mengandungi setiap objek individu.

P粉413704245
P粉413704245

membalas semua(1)
P粉351138462

Anda perlu menggunakan pembolehubah skop global untuk menyimpan objek. Tentukan objCollect di luar fungsi dan ia kini harus memegang semua nilai.

var objCollect = [];

function GetData(query) {
    var json = "";
    var api_url = ('https://jsondata.site?conn={conn}&query={query}');
    $.ajax({async: false; url: api_url, method: "GET"}).done(function(data){
        json = JSON.parse(data);
    });
    PlaceData(json);
};

function PlaceData(data) {
    objCollect.push(data);
    console.log(objCollect);
};
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan