提问人:E0132630 提问时间:4/5/2023 更新时间:4/5/2023 访问量:31
如何在 Javascript 中收集从另一个函数发送的对象?
How do I collect objects being sent in from another function in Javascript?
问:
我有一个函数,我们称之为GetData()。我正在从另一个函数的查询中提取数据,并运行 ajax 调用来填充数据。一旦发生这种情况,我就会发送到另一个函数,让我们调用 PlaceData()。每次通过 GetData() 中的 ajax 调用运行时,数据都会一起放在一个对象中。然后我将每个对象发送到 PlaceData(),我想通过 push() 方法将这些对象收集到 PlaceData() 的数组中,但每次它只是添加一个当前对象的新数组,所以我只得到单独的对象而不是集合。如何将它们收集到一个数组中?
所以这是我正在使用的代码示例:
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);
};
我希望objCollect[]保留所有被传入的对象,但相反,我只是得到一个包含每个单独对象的新数组
答:
2赞
Tushar Gupta
4/5/2023
#1
您需要使用全局范围的变量来存储对象。定义函数,它现在应该包含所有值。objCollect
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);
};
评论