node.js - How to properly convert an array of objects to CSV with papaparse? -


i'm performing mongdb database query downloads array of objects , want convert csv. i'm using babyparse papaparse alternative version node.

this i'm trying:

    player.find({}).       exec(function(err, players) {         console.log(players.length);         var csv = papaparse.unparse(players, {           quotes: false,           delimiter: ',',           newline: '\n'         });          response.set({'content-type': 'application/force-download',                       'content-disposition':'attachment; filename=players.csv'});           response.send(200, csv);       });   } 

however won't offer correct csv file weird, merge of csv content java script functions content.

how should it?

flatten json data using following function

json.flatten = function(data) {     var result = {};     function recurse (cur, prop) {         if (object(cur) !== cur) {             result[prop] = cur;         } else if (array.isarray(cur)) {             for(var i=0, l=cur.length; i<l; i++)                  if(cur[i].constructor === object)                  recurse(cur[i], prop + "[" + + "]");                  else                  {                     if(cur.length > 1)                     {                         result[prop] = (result[prop] || "") + cur[i] + ";";                     }                     else                     {                         result[prop] = cur;                     }                   }              if (l == 0)                 result[prop] = [];         } else {             var isempty = true;             (var p in cur) {                 isempty = false;                 recurse(cur[p], prop ? prop+"."+p : p);             }             if (isempty && prop)                 result[prop] = {};         }     }     recurse(data, "");     return result; } 

modify per case :)


Comments