首页 > 解决方案 > Javascript 数组长度返回 0

问题描述

当我使用 console.log 打印数组长度时,它返回 0 。但是在控制台中,如果我写txt.length它会返回实际长度(在我的例子中是 60)。出于这个原因,我无法遍历 txt 数组。

var txt;

function preload() {
  txt = loadStrings("DataProcess/outData.txt");
  console.log(txt);
  console.log(txt.length);
}

标签: javascriptarrays

解决方案


您需要在回调中获取长度。从文档中,该函数接受 3 个参数

loadStrings(filename, [callback], [errorCallback])

这意味着你应该做这样的事情:

var txt;

function preload() {
  loadStrings("DataProcess/outData.txt", (res) => {
    txt = res
    console.log(txt.length);
  })

}

推荐阅读