如何将变量存储在另一个文件中的数组中

时间:2019-05-30 21:21:47

标签: arrays node.js fs fwrite

到目前为止我已经做过/尝试过的事情:

我创建了一个名为links.js的文件,其中包含一个数组。

我已经有了运行的主文件(index.js),它会抓取网址;
我需要以我创建的格式将URL保存在links.js中,以便我可以运行程序的第二部分,该程序的第二部分要求以特定格式使用links.js,并使用从我的index.js收集的URL >

我已经尝试了fs并创建流等,但是我仍在学习nodejs,所以我不太了解它,并且在堆栈上找不到足够类似的问题来弄清楚该怎么做。

links.js文件每次使用来自index.js的另一个URL扩展url数组时所需的格式概述: 这是我需要的links.js数组格式

url = ['url1.com','url2.com','url3.com'];

module.exports{url:url};

我该如何编码index.js,以便将变量以上述格式存储在links.js(与我所在的文件不同的文件)中?

我的index.js当前将网址存储在test2[1]

我可以通过执行console.log(test2[1]);

来验证要存储的内容。

对不起,如果很难理解,我不确定如何更好地解释它,但是如果您对某些事情感到困惑,请告诉我,我将尝试改写!

感谢您的帮助:)

期望/预期结果:
我希望test2 [1]在index.js上返回http://example.com
我对index.js进行了扩展,然后保存test2 [1]并将其放入links.js中,但仍保持上述和所示的links.js格式。

我希望它不会被覆盖,因为索引使用pupeteer并循环访问以获得网站URL,并且每个扩展名都需要保存在单个links.js文件夹中,以扩大数组大小。

1 个答案:

答案 0 :(得分:1)

您可以将其另存为json文件。

const fs = require('fs')
const file = "./urls.json"

const urls = require(file )

//Here you update urls array
urls.push("url4.com")

fs.writeFileSync(file, JSON.stringify(urls))

urls.json

["url1.com","url2.com","url3.com", "url4.com"]