我需要引用使用 .get() 创建的数组



稍后我需要在我的代码中引用函数中的线索。如何在 .git 方法之外引用线索?

$.get("clues.txt", function(data) 
 {
  var clues = data.split(',');
});

根据 在 jQuery 变量中存储 ajax 结果的引用。 您可以将响应数据传递给其他函数。此外,您还可以通过将响应存储到一些hidden HTML 输入标签中来使用它。

<input type="hidden" id="clues_data" value="">

因此,在您的.get()方法中,您可以执行以下操作:

$.get("clues.txt", function(data) 
 {
  $("#clues_data").val(data);
});

然后在您的一些进一步函数中,您可以像这样访问它:

function someFurtherFunction(){
   var clues = $("#clues_data").val().split(',');
   // do something with clues
}

我知道这不是您问题的确切解决方案,但我已尝试帮助您处理这种情况。它可能有助于其他编码人员:)

您无法

可靠地访问提供其值的特定回调之外的clues。 由于结果是通过异步操作获得的,因此该异步操作的完成时间是未知的。 因此,唯一可以可靠地使用结果的地方是在回调本身内部,或者在从该回调中调用并将值传递给的函数中。 这就是您进行异步编程的方式。 从此回调中继续编程序列。

$.get("clues.txt", function(data) {
    var clues = data.split(',');
    // other code goes here that uses the `clues` variable
});
// code here cannot use the `clues` variable because the asynchronous operation
// has not yet completed so the value is not yet available

以下是其他一些相关答案:

如何让变量存在于此节点.js代码块之外?

节点.JS如何在当前范围之外设置变量

如何将"代码"值捕获到变量中?

最新更新