

Lambdaでcallback()のすぐ後にreturnを書いた方が良いかで悩んでいます。

以下のようなスクリプトで、`callback`以降の `console.log()`が実行されることを確認しました。

[code]

    'use strict';
    
    module.exports.helloWorld = (event, context, callback) => {
    const response = {
        statusCode: 200,
        headers: {
        'Access-Control-Allow-Origin': '*', // Required for CORS support to work
        },
        body: JSON.stringify({
        message: 'message ',
        input: event,
        }),
    };
    
    callback(null, response);
    console.log('', 'log2 after callback!')
    };
    
[/code]

ということは、if文を使った早期returnのような感覚で`callback`を使ってしまうと、予期しない挙動が発生するということでしょうか？（普通に考えればそうなりそうです）  
それを防ぐためには`callback`のすぐ後で`return`すればいいのはわかるんですが、そういうコードを個人的に見かけたことがないので自信が持てません。そうするべきでしょうか？


CC BY-SA 4.0
2018-12-11T09:02:46.643
51116
2022-12-18T12:02:45.290
2021-07-22T05:06:38.707
3060
26110
question
aws-lambda
AWS Lambdaをnode.jsで利用していて、callback()以降の処理を実行しないようにreturnする必要がありますか？


callbackはあくまでも戻り値を設定するだけの関数なので、処理が終了するわけではありません。  
ですので、それ以降の処理を行いたくないならreturnすべきですし、そもそもcallback以降にコードを書く必要性がそもそもないかと思います。


CC BY-SA 4.0
2019-06-01T09:18:19.940
55430
2019-06-01T09:18:19.940
34547
51116
answer