0

这是我的代码:

var csv = require('csv');

var Loader = function() {
  var rows;
  csv()
  .from.path('./data/ebay.csv', {
    columns: true,
    delimiter: ';'
  })
  .to.array( function(rows) {
    setRows(rows);
  });
  function setRows(input) {
    rows = input;
  }
  return rows;
};

module.exports = Loader;

我想rows在调用Loader对象时得到。我是 OOP Javascript 的初学者,所以我不知道该怎么做。我从哪里开始使用 node 学习 javascript oop?我发现许多教程描述了如何从 node 开始以及如何使用各种框架制作 web,但我已经知道了。我用 PHP 编程,现在转向 NodeJS,我被浪费了。

4

1 回答 1

1

像所有处理 I/O 的 node.js 函数一样,csv异步工作。因此,调用csv.from..to..立即返回,但回调函数只是稍后调用。使您的加载器也异步,如下所示:

var csv = require('csv');
var Loader = function(onData) {
  csv()
  .from.path('./data/ebay.csv', {
    columns: true,
    delimiter: ';'
  })
  .to.array(onData);
};
module.exports = Loader;
于 2013-02-12T16:00:35.397 回答