title: Get node.js neDB data into a variable
body: <p>I am able to insert and retrieve data from an neDB database in nodejs. But I cannot pass the data outside of the function that retrieves it. </p>
  
  <p>I have read through the neDB documentation and I searched for and tried different combinations of callbacks and returns (see code below) without finding a solution.</p>
  
  <p>I'm new to javascript so I do not know if I am misunderstanding how to use variables in general or if this issue is related to using neDB specifically or both. </p>
  
  <p>Could someone please explain why "x" in my code does not ever contain the docs JSON results from the database? How can I make it work? </p>
  
  <pre><code> var fs = require('fs'),
      Datastore = require('nedb')
    , db = new Datastore({ filename: 'datastore', autoload: true });
  
      //generate data to add to datafile
   var document = { Shift: "Late"
                 , StartTime: "4:00PM"
                 , EndTime: "12:00AM"
                 };
  
      // add the generated data to datafile
  db.insert(document, function (err, newDoc) {
  });
  
      //test to ensure that this search returns data
  db.find({ }, function (err, docs) {
              console.log(JSON.stringify(docs)); // logs all of the data in docs
          });
  
      //attempt to get a variable "x" that has all  
      //of the data from the datafile
  
  var x = function(err, callback){
  db.find({ }, function (err, docs) {
              callback(docs);
          });
      };
  
      console.log(x); //logs "[Function]"
  
  var x = db.find({ }, function (err, docs) {
          return docs;
      });
  
      console.log(x); //logs "undefined"
  
  var x = db.find({ }, function (err, docs) {
      });
  
      console.log(x); //logs "undefined"*
  </code></pre>