javascript - 在加载函数外部访问变量

标签 javascript android mobile titanium-mobile

您好,我正在使用 Titanium Studio 开发 Android 应用程序。我开发了一个小应用程序。我的问题是我无法访问 xhr.on 加载中定义的变量。我使用了以下代码:

xhr.onload = function()
{
var json = this.responseText;
var to_array = JSON.parse(json);
var to_count = to_array.length;
};

我想在 onload 函数之外访问 to_count 和 to_array 并将其传递给另一个子窗口。为此我使用了以下代码:

var feedWin = Titanium.UI.createWindow({
    url:'home/feed.js'
});//alert(to_count);
feedwin.to_array = to_array;
feedwin.to_count = to_count; 

最佳答案

默认情况下,XHR 客户端是异步的,这意味着代码将在 XHR 运行时继续执行。如果您有依赖于 XHR 完成的代码,那么您将需要从 onload 函数中调用该代码,或者通过将“false”作为第三个参数添加到 xhr 来强制 XHR 同步。 send()(我发现第一个选项更可靠,更符合 Titanium 期望/感觉的最佳实践,仅供引用)。

关于javascript - 在加载函数外部访问变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7401026/

相关文章:

android - 使用小米5 MIUI 8 Android Studio调试

java - 如何将字符串中的 double 据转换为在 android studio 上的 TextView 上设置

javascript - 清除浏览器历史记录后,Javascript 中的 localStorage 是否会被删除

iphone - 在 Android 和 iPhone 上使用默认起始位置从浏览器打开谷歌地图应用程序

javascript - 如何在保留非数字元素的值的同时划分数组中的数字元素

javascript - 在 Deno 中创建 Rest API

android - Facebook android sdk 依赖冲突

php - 移动重定向和完整站点链接

php - 使用 PHP/MySQL 日期查询向 Google 可视化页面提交表单

javascript - 你能检测到 dom 节点的样式何时设置为 'auto' 吗?