如何使用node.js读取名词的文本文件并将其存储在变量中

时间:2019-04-08 02:55:28

标签: javascript node.js storage bots

因此,我正在尝试编写一个向Facebook发布的漫游器,“您不会(随机动词)是(随机名词),对吗?”每隔一小时。我有一长串动词和名词,分别为“ verbs.txt”和“ nouns.txt”。我遇到的麻烦是让程序读取文件,从文件中选择一个随机单词并将其存储在变量中。我尝试了很多不同的事情,但没有结果,我将代码运行回该版本,除了未定义的变量。

let postContents = "You wouldn't" + verb + " a " + noun + ", would you?";

FB.api('me/feed', 'post', { message: postContents }, res => {
    if (!res || res.error) {
        return console.error(!res ? 'error occurred' : res.error);
    }

    console.log(`Post ID: ${res.id}`);
});

1 个答案:

答案 0 :(得分:0)

假设文件如下:

noun
noun1

您可以这样加载。这是同步的。如果需要,您也可以异步方式执行此操作。

const fs = require("fs");
const nounFile = "nouns.txt";
const verbFile = "verbs.txt";

const readFile = function (file) {
    return fs.readFileSync(file).toString().split("\n");
};

const randomItem = function (items) {
    return items[Math.floor(Math.random() * items.length)];
};

const nouns = readFile(nounFile);
const verbs = readFile(verbFile);
const noun = randomItem(nouns);
const verb = randomItem(verbs);