Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/382.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 将数据预处理到硬编码数组中_Javascript_Arrays - Fatal编程技术网

Javascript 将数据预处理到硬编码数组中

Javascript 将数据预处理到硬编码数组中,javascript,arrays,Javascript,Arrays,我有一个关于硬编码数组的问题。我研究了之前提出的几个关于硬编码数组的问题,希望通过这种方式得到答案。但是,在大多数情况下,我不理解答案,这是唯一一个似乎与之相关的答案: 不过,我的问题要简单得多。我在OpenOffice电子表格中有几个工作表,我选择将其预处理成一个大的硬编码数组,然后将其存储在我的“服务器”目录中。为了测试这一点,我将以下代码行放入名为“distance.js”的文件中,并将该文件直接放在我的应用程序目录中的“server”文件夹中: var distances = {}

我有一个关于硬编码数组的问题。我研究了之前提出的几个关于硬编码数组的问题,希望通过这种方式得到答案。但是,在大多数情况下,我不理解答案,这是唯一一个似乎与之相关的答案:

不过,我的问题要简单得多。我在OpenOffice电子表格中有几个工作表,我选择将其预处理成一个大的硬编码数组,然后将其存储在我的“服务器”目录中。为了测试这一点,我将以下代码行放入名为“distance.js”的文件中,并将该文件直接放在我的应用程序目录中的“server”文件夹中:

  var distances = {};
  distances['Salt Lake City.Washington, DC'] = 2080;
  distances['Salt Lake City.Cheyenne'] = 434;
  distances['Salt Lake City.Denver'] = 536;
  distances['Salt Lake City.Carson City'] = 534;

然后,我在控制台中运行以下命令,查看是否能够在我的应用程序中访问这些数组值:

  console.log(distances['Salt Lake City.Carson City']);

我得到的结果是:

未捕获引用错误:未定义分数(…)


然后,我尝试在Meteor.isServer中的Meteor.startup函数中的常规project.js文件中插入这些行:

  if (Meteor.isServer) {
    Meteor.startup(function () {
      // code to run on server at startup
      var distances = {};
      distances['Salt Lake City.Washington, DC'] = 2080;
      distances['Salt Lake City.Cheyenne'] = 434;
      distances['Salt Lake City.Denver'] = 536;
      distances['Salt Lake City.Carson City'] = 534;
    });
  }
这导致了同样的错误


我的项目中安装了“不安全”软件包,所以安全性不应该是个问题。我想我只是缺少了一些基本的东西,关于代码需要去哪里才能被编译器/解释器看到。有人能帮忙吗

我有点期待有人建议我把所有这些信息收集起来。我现在不明白为什么这样做会有好处,但也许我遗漏了这样做有用性的一些基本信息。如果是这样的话,有人能给我解释一下或者给我指一个我可以自己阅读的地方吗?我已经完成了几个meteor教程,最近是你的第二个meteor应用程序。这些都是很好的教程,我从中学到了很多。但我觉得我的知识中仍有一些漏洞需要解决,这就是一个最好的例子


我的计划是通过函数调用访问这些硬编码的数组元素,函数调用如下所示:

  getDistance('Salt Lake City','Cheyenne')
因为我不存储向后的值,例如夏延到盐湖城的距离,所以我打算设置该函数,以便在未定义特定引用的情况下,它将翻转两个元素,并以相同的方式再次调用该函数,但使用那些反转的值(即getDistance('right','left')代替getDistance(“左”、“右”)

但是,目前,我甚至无法通过第一步


提前感谢您为我提供的任何帮助。

答案似乎是使用fs模块从您的文本文件中读取数据并将其输入到您的集合中。我仍在努力实现这一点,但这里有更多信息:

在您提供的代码中,我没有看到名为
分数的变量,您的控制台e抛出了一个错误,因为它是未定义的。所以,我首先要跟踪
分数
,看看那里发生了什么。对不起,“分数”是错误实际上说的,但是为了这个问题,我更改了代码。在原始代码中读作“分数”的实际上是这个代码中的“距离”。因此错误实际上应该读作如下:未捕获引用错误:未定义距离(…)很抱歉造成混淆。谢谢你指出这一点。现在我想知道这是否是一个局部变量,它在代码的某个部分之外是不可见的。更新:我在github上找到一个链接,它指出现在可以批量插入集合:我怀疑这是我需要做的,所以我将研究这一点年龄更详细。谢谢。好吧,我现在怀疑我真正想做的事情在这里的链接中有描述:



主要的事情是我需要能够将文本文件中的数据获取到Mongo中。我从阅读批量上传的信息中得到的印象是,这并不方便。