

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 步驟 2：更新 Lambda 函數
<a name="tutorial-lambda-sam-update-function"></a>

 在本主題中，您會更新 `myDateTimeFunction.js` 檔案。在下一個步驟中，您將使用此檔案部署更新的函數。這會觸發 CodeDeploy 透過將生產流量從 Lambda 函數的目前版本轉移到更新的版本來部署它。

**更新您的 Lambda 函數**

1.  打開 `myDateTimeFunction.js`。

1.  移除兩個註解標記 (「`/*`」和「`*/`」)，以及 `switch` 區塊中名為 `time` 的 `case` 開頭和結尾的說明文字。

    取消註解的程式碼可讓您將新的參數 `time` 傳遞至函數。如果您將 `time` 傳遞給更新的函數，它會傳回目前的 `hour`、`minute` 和 `second`。

1.  儲存 `myDateTimeFunction.js`。它看起來應該如下所示：

   ```
   'use strict';
   
   exports.handler = function(event, context, callback) {
   
     if (event.body) {
       event = JSON.parse(event.body);
     }
   
     var sc; // Status code
     var result = ""; // Response payload
   
     switch(event.option) {
       case "date":
         switch(event.period) {
           case "yesterday":
             result = setDateResult("yesterday");
             sc = 200;
             break;
           case "today":
             result = setDateResult();
             sc = 200;
             break;
           case "tomorrow":
             result = setDateResult("tomorrow");
             sc = 200;
             break;
           default:
             result = {
               "error": "Must specify 'yesterday', 'today', or 'tomorrow'."
             };
             sc = 400;
             break;
         }
         break;
         case "time":
           var d = new Date();
           var h = d.getHours();
           var mi = d.getMinutes();
           var s = d.getSeconds();
   
           result = {
             "hour": h,
             "minute": mi,
             "second": s
           };
           sc = 200;
           break;
   
         default:
           result = {
             "error": "Must specify 'date' or 'time'."
           };
           sc = 400;
         break;
     }
   
     const response = {
       statusCode: sc,
       headers: { "Content-type": "application/json" },
       body: JSON.stringify( result )
     };
   
     callback(null, response);
   
     function setDateResult(option) {
   
       var d = new Date(); // Today
       var mo; // Month
       var da; // Day
       var y; // Year
   
       switch(option) {
         case "yesterday":
           d.setDate(d.getDate() - 1);
           break;
         case "tomorrow":
           d.setDate(d.getDate() + 1);
         default:
          break;
       }
   
       mo = d.getMonth() + 1; // Months are zero offset (0-11)
       da = d.getDate();
       y = d.getFullYear();
   
       result = {
         "month": mo,
         "day": da,
         "year": y
       };
   
       return result;
     }
   };
   ```