title: Unexpected identifier with await: Node.js
body: <p>I should query a MongoDB and find all elements of a collection called <em>location</em> and store the results in a variable.
  I have three scripts: <strong>location.js</strong> (in <em>models/location</em>), <strong>fetcher.js</strong> (in <em>fetch/fetcher</em>) and <strong>test.js</strong>; </p>
  
  <blockquote>
    <p><strong>location.js</strong></p>
  </blockquote>
  
  <pre><code>const mongoose = require('mongoose')
  var Schema = mongoose.Schema
  
  var locationSchema = new Schema({
      latitude: String,
      longitude: String
  })
  
  module.exports = mongoose.model('location', locationSchema)
  </code></pre>
  
  <blockquote>
    <p><strong>fetcher.js</strong></p>
  </blockquote>
  
  <pre><code>const mongoose = require('mongoose')
  const Location = require('../models/location')
  
  // set Promise provider to bluebird
  mongoose.Promise = require('bluebird')
  mongoose.connect('mongodb://localhost:27017/mydb')
  
  exports.findAll = async () =&gt; {
      let query = await Location.find()
      return query
  }
  </code></pre>
  
  <blockquote>
    <p><strong>test.js</strong></p>
  </blockquote>
  
  <pre><code>const Location = require('./models/location')
  const fetcher = require('./fetch/fetcher')
  let items= await fetcher.findAll()
  console.log(items[0].latitude)
  </code></pre>
  
  <p>When calling <em>node test.js</em> I receive this message: </p>
  
  <pre><code> let items = await fetcher.findAll();
                     ^^^^^^^
   SyntaxError: Unexpected identifier
      at createScript (vm.js:74:10)
      at Object.runInThisContext (vm.js:116:10)
      at Module._compile (module.js:533:28)
      at Object.Module._extensions..js (module.js:580:10)
      at Module.load (module.js:503:32)
      at tryModuleLoad (module.js:466:12)
      at Function.Module._load (module.js:458:3)
      at Function.Module.runMain (module.js:605:10)
      at startup (bootstrap_node.js:158:16)
      at bootstrap_node.js:575:3`
  </code></pre>
  
  <p>If I remove the <strong>await</strong> keyword the error doens't appear anymore, but the result is     <code>Promise { &lt;pending&gt; }</code>.</p>
  
  <p>I'm new in javascript and Node.js, and I don't master the asynchronus calls. Could you tell me where I wrong and how to solve this problem? </p>
  
  <p><strong>Note</strong>: I have the version Node v8.1.2</p>