如何返回节点js中的数组数组?

时间:2013-01-23 15:55:38

标签: javascript node.js express

我在节点js中有这样的模块

var types =  function (){

  var typeList= new Array();
  typeList[0] = "varchar";

  var numericDTs= new Array();
  numericDTs[0] = "tinyint";

  var binaryDTs= new Array();
  binaryDTs[0] = "tinyblob";

  var data = array();
  data[0] = typeList;
  data[1] = numericDTs;
  data[2] = binaryDTs;

  return data;
}

module.exports = {
  types: types,
}

我正在调用这个模块

var types = require("./include/types");
console.log(types.types());

我得到这样的错误 500 ReferenceError:未定义数组 如果我只返回类型或typeList或binaryDT,则没有错误。 如何在节点js中返回数组数组?

2 个答案:

答案 0 :(得分:5)

您的错误在这里:

var data = array();

改为编写以下内容:

var date = [];

实际上用new Array()替换每个[]

而不是

var typeList= new Array();
typeList[0] = "varchar";

var typeList = [ "varchar" ];等等。

修改

实际上你的整个功能可以简化为:

var types = function() {
     return [ [ "varchar" ], [ "tinyint" ], [ "tinyblob" ] ];
};

答案 1 :(得分:4)

扩展另一个答案,

假设您不在其他地方使用该功能,您可以写

 module.exports = {
   types: function(){
     return [["varchar"], ["tinyint"], ["tinyblob"]];
   }
 }