単純な電卓の Lambda 関数 - Amazon API Gateway

単純な電卓の Lambda 関数

例として加減乗除のバイナリ演算を行う Node.js Lambda 関数を使用します。

単純な電卓の Lambda 関数の入力形式

この関数の入力形式は次のとおりです。

{ "a": "Number", "b": "Number", "op": "string"}

op(+, -, *, /, add, sub, mul, div) のいずれかです。

単純な電卓の Lambda 関数の出力形式

演算が成功すると、次の形式の結果が返されます。

{ "a": "Number", "b": "Number", "op": "string", "c": "Number"}

c には計算結果が入ります。

単純な電卓の Lambda 関数の実装

Lambda 関数の実装は次のとおりです。

export const handler = async function (event, context) { console.log("Received event:", JSON.stringify(event)); if ( event.a === undefined || event.b === undefined || event.op === undefined ) { return "400 Invalid Input"; } const res = {}; res.a = Number(event.a); res.b = Number(event.b); res.op = event.op; if (isNaN(event.a) || isNaN(event.b)) { return "400 Invalid Operand"; } switch (event.op) { case "+": case "add": res.c = res.a + res.b; break; case "-": case "sub": res.c = res.a - res.b; break; case "*": case "mul": res.c = res.a * res.b; break; case "/": case "div": if (res.b == 0) { return "400 Divide by Zero"; } else { res.c = res.a / res.b; } break; default: return "400 Invalid Operator"; } return res; };