包含来自另一个文件的数组(nodejs)

Posted

技术标签:

【中文标题】包含来自另一个文件的数组(nodejs)【英文标题】:Include an array from another file (nodejs) 【发布时间】:2014-06-04 19:04:02 【问题描述】:

我有一个文件,其中包含迭代一个非常大的数组的代码。我宁愿不要将数组与代码放在同一个文件中以保持干净。但是,我不确定如何包含包含我的数组的文件并正确访问我的迭代的各个元素。我宁愿不使用 JSON 对象,因为我不需要 key -> value

【问题讨论】:

使用require 并从文件中返回数组 确实是 export 你的大数组,require 它在你需要的地方。请参阅:***.com/questions/5311334/…。官方文档:nodejs.org/api/modules.html#modules_module_exports 【参考方案1】:

就像其他人说的那样,您可以使用require 并将函数放入exports

myOtherFile.js

exports.largeArrayFunction = function() 
     //do stuff
     return stuff;

myMainNodeFile.js

var otherFile = require("myOtherFile.js");
var myArray = otherFile.largeArrayFunction();

【讨论】:

太棒了,这行得通。带来了http 模块的新问题,但至少我会继续前进。谢谢。【参考方案2】:

要么使用常规的 javascript 文件:

module.exports = [1, 2, 3]

或者是一个JSON文件,也可以是一个简单的Array:

[1, 2, 3]

然后使用 require 包含它:

var arr = require('./array.js'); // Or './array.json'

for(var i = 0; i < arr.length; i++) 
    // arr[i] ...

【讨论】:

.js 和 .json 文件由 node require() 处理不同。因此上面的答案。

以上是关于包含来自另一个文件的数组(nodejs)的主要内容,如果未能解决你的问题,请参考以下文章

如何包含来自另一个文件的 cython 代码

数组包含来自另一个数组的任何值?

如何包含来自同一项目的另一个文件的模块?

MVC Razor,包含来自另一个项目的 JS/CSS 文件

包含来自另一个文件的函数会导致范围错误 (openFoam)

Django:包含来自另一个应用程序的模板