Javascript 为txt文件中的每一行执行节点函数

Javascript 为txt文件中的每一行执行节点函数,javascript,node.js,Javascript,Node.js,我有一个项目列表,我试图为每个项目调用一个函数。每行上都有一个名称和一个价格,我试图将它们设置为函数的变量 我可以列出所有项目,但我不能单独调用每个项目的函数。这就是我所拥有的,但我无法理解。谢谢 var readline = require('readline'); var rl = readline.createInterface({ input : fs.createReadStream('./items/item.txt'), output: process.st

我有一个项目列表,我试图为每个项目调用一个函数。每行上都有一个名称和一个价格,我试图将它们设置为函数的变量

我可以列出所有项目,但我不能单独调用每个项目的函数。这就是我所拥有的,但我无法理解。谢谢

var readline = require('readline');
var rl = readline.createInterface({
      input : fs.createReadStream('./items/item.txt'),
      output: process.stdout,
      terminal: false
})
rl.on('line',function(line){
     console.log(line) //or parse line
     for(i in line){
        //do action!

     }
})
返回此行的字符串字符

如果您的行的格式如下
foobar 1.23
,您可以在空间上爆炸

rl.on('line', function(line){

     var item = line.split(' ');
     var itemName = item[0];
     var itemPrice = item[1];
     doAction(itemName, itemPrice);
})
或者使用带有捕获组的RegExp

或者使用另一种格式;对于像JSON这样的每一行

返回此行的字符串字符

如果您的行的格式如下
foobar 1.23
,您可以在空间上爆炸

rl.on('line', function(line){

     var item = line.split(' ');
     var itemName = item[0];
     var itemPrice = item[1];
     doAction(itemName, itemPrice);
})
或者使用带有捕获组的RegExp


或者使用另一种格式;对于像JSON这样的每一行,您都可以通过以下方式进行尝试:

const items = fs.readFileSync(path.join(__dirname, file), 'utf-8').split('\n');

items.forEach((item) => {
    // do your action
    let name = item.split('--')[0];
    let price = item.split('--')[1]
})

您可以通过以下方式进行尝试:

const items = fs.readFileSync(path.join(__dirname, file), 'utf-8').split('\n');

items.forEach((item) => {
    // do your action
    let name = item.split('--')[0];
    let price = item.split('--')[1]
})

嗯,可能是一个for in循环。它遍历一个对象的属性,可能是for-in循环。它遍历对象的属性。感谢您的响应,但这不是一次就转到doAction()吗?它不需要是某种循环吗?thnakswith
on('line'
)会为文件的每一行调用callback感谢您的响应,但这不是一次就要到达doAction()吗?它不需要是某种循环吗?thnakswith
on('line'
),会为文件的每一行调用callback