【发布时间】:2019-06-18 13:35:48
【问题描述】:
我无法弄清楚我的代码有什么问题。这似乎是一个javascript问题。
我正在使用 $http.get 加载本地 txt 文件(有不同的方法吗?)。我想将此内容推送到数组中。为了测试,我只是推送任何字符串,以确保它与实际的 txt 文件无关。
var myArray = [];
$http.get(localFilePath).then(
function(success){
myArray.push("123");
},
function(error){
// other stuff
});
console.log(myArray);
此简单代码不会生成正确的数组。如果我 console.log 创建了数组,这是来自 Chrome 开发工具的屏幕截图:
现在,这看起来像一个正确的数组,但事实并非如此。如果我 console.log(myArray.length) 它返回 0。
下面是使用相同代码 myArray.push("123") outside $http.get() 函数的正确数组的外观:
如果我在 $http.get() 函数中执行此操作,谁能说出这两个数组之间的区别以及为什么第一个数组的创建方式不同?
【问题讨论】:
-
您能显示您在控制台记录阵列的位置吗?是在success函数里面还是外面?
-
@Soviut 我在成功函数之外进行控制台日志记录
-
您应该编辑您的问题并将其包含在内,因为它对我们给出的答案至关重要。
标签: javascript arrays angularjs http-get