throw error when there are some  iterator code 
Hi, I've some code like this: 
```
static async addArticle(ctx, next) {
    const req = ctx.request.body

    [1, 2, 3, 4].forEach(num => console.log(num))
    
    const createdDate = new Date()
    
    const html = marked('<TOC/> \n\n' + '<!-- more --> \n\n' + req.content)
    const i = html.indexOf('<!-- more -->')
    const toc = html.slice(0, i)
    const htmlContent = html.slice(i + 13)

    const result = await ArticleModel.create({...req, htmlContent, toc, createdDate})
      .catch(e => ctx.throw(500))
    ctx.send({ status: 'ok', message: 'success' })
  }
```

I don't know why error like this will happen:

```
POST /article/new 500 
      errMsg: Cannot read property '4' of undefined
      errStack: TypeError: Cannot read property '4' of undefined
    at addArticle (/home/elapse/repo/elapse/server/controller/article/article.js:49:5)
    at dispatch (/home/elapse/repo/elapse/server/node_modules/_koa-compose@3.2.1@koa-compose/index.js:44:32)
    at next (/home/elapse/repo/elapse/server/node_modules/_koa-compose@3.2.1@koa-compose/index.js:45:18)
    at /home/elapse/repo/elapse/server/node_modules/_koa-router@7.4.0@koa-router/lib/router.js:346:16
    at dispatch (/home/elapse/repo/elapse/server/node_modules/_koa-compose@3.2.1@koa-compose/index.js:44:32)
    at /home/elapse/repo/elapse/server/node_modules/_koa-compose@3.2.1@koa-compose/index.js:36:12
    at dispatch (/home/elapse/repo/elapse/server/node_modules/_koa-router@7.4.0@koa-router/lib/router.js:351:31)
    at dispatch (/home/elapse/repo/elapse/server/node_modules/_koa-compose@4.0.0@koa-compose/index.js:42:32)
    at next (/home/elapse/repo/elapse/server/node_modules/_koa-compose@4.0.0@koa-compose/index.js:43:18)
    at /home/elapse/repo/elapse/server/middleware/json/index.js:9:11
    at dispatch (/home/elapse/repo/elapse/server/node_modules/_koa-compose@4.0.0@koa-compose/index.js:42:32)
    at next (/home/elapse/repo/elapse/server/node_modules/_koa-compose@4.0.0@koa-compose/index.js:43:18)
    at bodyParser (/home/elapse/repo/elapse/server/node_modules/_koa-bodyparser@4.2.0@koa-bodyparser/index.js:86:11)
    at <anonymous>
    at process._tickCallback (internal/process/next_tick.js:188:7)
```

Howerver, I touch a new file and just code:
```
[1, 2, 3, 4].forEach(num => console.log(num))
```
and then node run this file, no errors.

Behind is my runtime enviroment version: 
```
node-v: v8.9.3
npm-v: 5.5.1
koa: ^2.4.1
koa-router: ^7.3.0
```
