title: nodeJS syntaxError: unexpected token this
body: <p><strong>Background</strong>: User inputs details about a flight in <code>app.js</code>, which then prints it out in the console. Only one module is used from <code>index.js</code>, which contains an object prototype. </p>
  
  <p><strong>Problem</strong>: When I run the command "node app.js", I get the following error: </p>
  
  <pre><code>/Users/
  UserName/Desktop/NodeTrainingWork/04/objectcreat/flight/index.js:3
  var this.data = {
      ^^^^
  SyntaxError: Unexpected token this
  at exports.runInThisContext (vm.js:53:16)
  at Module._compile (module.js:413:25)
  at Object.Module._extensions..js (module.js:452:10)
  at Module.load (module.js:355:32)
  at Function.Module._load (module.js:310:12)
  at Module.require (module.js:365:17)
  at require (module.js:384:17)
  at Object.&lt;anonymous&gt; (/Users/UserName/Desktop/NodeTrainingWork/04/objectcreat/app.js:1:76)
  at Module._compile (module.js:434:26)
  at Object.Module._extensions..js (module.js:452:10)
  </code></pre>
  
  <p>This is the <code>index.js</code> code: </p>
  
  <pre><code>var Flight = function() {
  
   var this.data = {
      number: null,
      origin: null,
      destination: null,
      arrivalTime: null
  };
  
  this.fill = function(info) {
      for (var prop in this.data) {
          if (this.data[prop] != 'undefined') {
              this.data[prop] = info[prop];
          }
      }
  };
  
  this.triggerArrival: function() {
      this.data.arrivalTime = Date.now();
      }
  
  this.getInformation: function() {
      return this.data;
      }   
  };      
  
  
  module.exports = function(info) {
      var instance = new Flight();
      instance.fill(info);
      return instance;
  
  };
  </code></pre>
  
  <p>And this is the code in the <code>app.js</code> file: </p>
  
  <pre><code>     var flight = require('./flight');
  
  
  var pdxlax = {
      number: 847,
      origin: 'PDX',
      destination: 'LAX'
  };
  
  var pl = flight(pdxlax);
  pl.triggerArrival();
  
  console.log(pl.getInformation());
  
  
  var pk340 = {
      number: 340,
      origin: 'ISL',
      destination: 'DXB'
  };
  
  var pk = flight(pk340);
  pk.triggerArrival();
  
  console.log(pk.getInformation());
  </code></pre>
  
  <p>I dont know where I am going wrong. From what I have learned, my way of creating a an object prototype is correct. </p>