所有源代码都可在此处获得:只需查看页面源代码。一半代码在该页面上,另一半在源代码中链接的“deputyDepot.js”文件中,也应该是可见的。
只是几件事:这显然仍在进行中。我在编码时非常杂乱无章,我倾向于跳来跳去,做一些这个和那个。所以有点乱。还有背景。我们就假装它不存在,好吗?
所以现在,解决问题!似乎我无法访问任何函数中的数组。
目前,我一直在测试的方式是修改我的主要功能(称为 weTalkNow(input))。它位于代理Depot.js 中。我将它设置为返回我正在测试的任何值,以查看它们的设置。这些值会打印在我的聊天框中。所以我像 console.log() 一样使用它。目前它被设置为返回用户输入的长度,但这完全无关紧要。
_inputArray 通过获取用户输入(字符串)并将其拆分为空格来填充。它在页面顶部声明。这一切都很好,花花公子。
出现问题的地方是如果手动填充数组。
var x = [ [1,2], [3,4] ];
/* Main Function */
function weTalkNow(){
return x[0][0];
}
据我所知,该代码应该输出 1。但事实并非如此。当代码修改为此,它工作正常:
/* Main Function */
function weTalkNow(){
var x = [ [1,2], [3,4] ];
return x[0][0];
}
然而,这不是很有帮助。我需要一个全局数组,而不是本地数组。
让事情变得非常奇怪的是,如果我决定宣布
var x = [ [1,2], [3,4] ];
在我的主页(带有 HTML 和内容的那个)上,然后执行此操作
/* Main Function */
function weTalkNow(){
return x[0][0];
}
在代理Depot.js 文件中,它工作正常。突然间,如果我在不同的页面上声明一个全局数组,它就可以正常工作。
如果我能以任何方式澄清任何观点,请告诉我。我试图提供我能提供的所有信息。也欢迎随机的小贴士,但我主要只关注这一点。
同样,我很清楚:无论出于何种原因,如果我手动填充它们,我就不能使用数组(我认为这与问题有关)。_inputArray 工作正常,因此该数组可以正常工作。它是唯一这样做的全局数组。但它不是手动填充的,而是通过 split 函数填充的。我似乎无法创建一个可由函数访问的全局数组。
编辑:
好的,我发现了问题!我正在编写的所有代码都可以正常工作,就像它应该的那样。问题是我的 .js 文件的最顶部是一个损坏的函数。第一行阻止了它下面的所有代码运行,因此我的数组从一开始就没有被初始化。出于这个原因,我无法访问它们。
一旦我检查了 Web 控制台,我就能解决所有问题。在发布这个问题之前,我不知道有一个网络控制台。