

nodejs を 使ったAPIを作っています。

[code]

    const _     = require('lodash');    
    const func  = require('./func');
    const items = [item1, item2, ....];
    const data  = {};
    
    const main = async () => {
    
        for(let i = 0; i < items.length; i++){
        　　_.assign(data, {
          　　　[items[i]]: await func.getData(items[i])
          　});
        }
    
        keywords.forEach( (item, index, self)  => {
            _.assign(data, {
                [item]: await func.getData(item)
            });
        });
    
        console.log(data);
    
    };
    
    main();
    
[/code]

上記のような、あるitemの配列についてループを回す際に、forEachの場合のみ以下のようなエラーが出てしまいます。

[code]

    [item]: await func.getData(item, 30)
                  ^^^^
    
    SyntaxError: Unexpected identifier
    
[/code]

これは何が原因なのでしょうか？  
funcは、別ファイルで関数群を定義し、async function をexportしています。


CC BY-SA 3.0
2018-02-15T22:36:16.767
41753
2020-01-05T10:02:30.323
2018-02-16T00:59:21.707
3060
27420
question
javascript node.js
Javascript の forEach のエラー


forEachのcallbackに対して `async` が必要になるようですね。

[code]

    keywords.forEach( async (item, index, self)  => {}
    
[/code]


CC BY-SA 3.0
2018-02-17T03:47:06.983
41797
2018-02-17T03:47:06.983
4484
41753
answer