gpt4 book ai didi

javascript - 如何在另一个函数调用中设置全局数组值

转载 作者:行者123 更新时间:2023-11-28 06:04:49 24 4
gpt4 key购买 nike

我正在使用ajax调用从数据库中检索值,然后尝试将这些值插入数组(全局声明)。但是在被调用函数之外,如果我尝试检查数组的值,它会显示空数组。这是我的代码:

function functionName() {

var arr1 = [];
var arr2 = [];

$(function() {

$.ajax({
url: "RandomURL",
data: {
some random data
}
}).done(
function(data) {
console.log(data.data);

for (var i = 0; i < data.data.length; i++) {
arr1.push({
x: data.data[i][0],
y: data.data[i][1]
});
arr2.push({
x: data.data[i][0],
y: data.data[i][2]
});
}

});

});
console.log(arr1);
console.log(arr2);

return [{
values: arr1,
key: 'array1 values',
color: '#ff7f0e'
}, {
values: arr2,
key: 'arr2 values',
color: '2ca02c'
}];

}

最佳答案

只需进行如下更改,您不需要将这些数组返回到另一个函数,因为您已将其声明为全局:

    var arr1 = [];
var arr2 = [];

function functionName() {

$.ajax({
url: "RandomURL",
data: {
some random data
}
}).done(
function(data) {
console.log(data.data);

for (var i = 0; i < data.data.length; i++) {
arr1.push({
x: data.data[i][0],
y: data.data[i][1]
});
arr2.push({
x: data.data[i][0],
y: data.data[i][2]
});
}

});

console.log(arr1);
console.log(arr2);


}

因此您可以在 plod 数据中分配值,例如:

var plotData = [{
values: arr1,
key: 'array1 values',
color: '#ff7f0e'
}, {
values: arr2,
key: 'arr2 values',
color: '2ca02c'
}];

关于javascript - 如何在另一个函数调用中设置全局数组值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36976500/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com