open source guy
open source guy

Reputation: 2787

How return array of arrays in node js?

I have module like this in node 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,
}

i am calling this module like this

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

i got error like this 500 ReferenceError: array is not defined no error if i return only types or typeList or binaryDTs. How return array of arrays in node js?

Upvotes: 1

Views: 20184

Answers (2)

Amberlamps
Amberlamps

Reputation: 40448

Your error is here:

var data = array();

Write the following instead:

var date = [];

Actually replace every new Array() with [].

Instead of

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

write var typeList = [ "varchar" ]; and so on.

EDIT:

Actually your whole function can be reduced to:

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

Upvotes: 6

John Dvorak
John Dvorak

Reputation: 27287

Expanding on the other answer,

assuming you don't use the function anywhere else, you could just write

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

Upvotes: 5

Related Questions