如何在 JavaScript 函式中使用命名引數?


在這篇文章中,我們將學習如何在 javascript 中使用命名引數,以及如何使用它來顯著增強程式碼的可讀性和可維護性。

Javascript 允許我們使用命名引數,這消除了函式執行期間引數順序需要一致的要求。然後,我們可以在函式定義內部按名稱訪問這些引數。

讓我們看一些示例和方法來更好地理解這個概念 -

示例 1 - 將物件作為引數傳遞

我們可以將物件作為引數傳遞給函式以實現命名引數的功能。這使用物件的屬性來表示命名值。

在這個示例中,我們將 -

  • 建立一個 greet 函式,它接受一個具有 name、age 和 city 屬性的物件引數。

  • 透過使用它,我們可以使用各自的名稱傳遞值,從而提高程式碼的可讀性。

  • 然後,我們將使用提供的變數值將問候訊息記錄到控制檯。

檔名 - index.html

<html>
<head>
   <title>How to use named arguments in JavaScript functions?</title>
   <script>
      function greet({ name, age, city }) {
         console.log(`Hello ${name}! You are ${age} years old and from ${city}.`);
      }

      greet({ name: 'John', age: 30, city: 'New York' });
   </script>
</head>
<body>
   <h1>How to use named arguments in JavaScript functions?</h1>
</body>
</html>

輸出

結果將如下面的圖片所示。

示例 2 - 解構屬性

透過使用解構,我們可以從物件中提取特定值並將它們分配給單個變數,從而在 JavaScript 中實現類似命名引數的行為。

在這個示例中,我們將 -

  • 在 greet 函式中,使用解構賦值從 person 物件中提取 name、age 和 city 值。

  • 透過解構物件,我們可以在函式中直接使用命名變數。

檔名 - index.html

<!DOCTYPE html>
<html>
<head>
   <title>How to use named arguments in JavaScript functions?</title>
   <script>
      function greet({ name, age, city }) {
         console.log(`Hello ${name}! You are ${age} years old and from ${city}.`);
      }

      const person = { name: 'John', age: 30, city: 'New York' };
      greet(person);
   </script>
</head>
<body>
   <h1>How to use named arguments in JavaScript functions?</h1>
</body>
</html>

輸出

結果將如下面的圖片所示。

示例 3 - 使用配置物件

透過在函式中使用配置物件,我們也可以在 javascript 中實現類似命名引數的行為。

在這個示例中,我們將 -

  • 建立一個 createProduct 函式,它接受一個配置物件作為引數。

  • 它接受 name 和 price 等屬性,幷包含一個可選的 color 屬性,其預設值為 'black'。

  • 透過使用配置物件,我們可以只傳遞必要的屬性併為可選屬性提供預設值。

檔名 - index.html

<html>
<head>
   <title>How to use named arguments in JavaScript functions?</title>
   <script>
      function createProduct({ name, price, color = 'black' }) {
         console.log(`Product: ${name}, Price: ${price}, Color: ${color}`);
      }

      createProduct({ name: 'Phone', price: 500 });
      createProduct({ name: 'Shirt', price: 20, color: 'blue' });
   </script>
</head>
<body>
   <h1>How to use named arguments in JavaScript functions?</h1>
</body>
</html>

輸出

結果將如下面的圖片所示。

結論

總之,儘管 JavaScript 沒有原生命名引數,但我們可以使用諸如將物件用作引數、解構賦值或配置物件之類的技術來實現類似的功能。這些方法在很大程度上提高了程式碼的可讀性和可維護性。我們學習瞭如何使用不同的方法在 javascript 中使用命名引數,並看到了一些解釋相同的示例。

更新於: 2023-08-16

1K+ 次瀏覽

啟動你的 職業生涯

透過完成課程獲得認證

開始學習
廣告