在 JavaScript 函式中將預設變數值設定為 undefined


本文將介紹如何在 JavaScript 函式中將預設變數值設定為 undefined。在開始之前,讓我們先了解一下 JavaScript 中的函式。

函式是 JavaScript 的核心組成部分之一。在 JavaScript 中,函式類似於過程——一系列執行操作或計算值的語句。但是,要使過程成為函式,它必須接受輸入併產生輸出,並且輸入和輸出之間存在明顯的關聯。

讓我們看看如何在函式中將預設變數值設定為 undefined。

使用 OR (||) 運算子

對於一組運算元,邏輯 **OR (||)** (邏輯析取) 運算子當且僅當一個或多個運算元為真時才為真。它通常用於布林值。當與非布林值一起使用時,|| 運算子將返回一個非布林值,因為它實際上返回給定運算元之一的值。

語法

以下是 **OR (||)** 運算子的語法:

expr1 || expr2

示例

在下面的示例中,我們使用 OR 運算子執行指令碼以將值設定為“undefined”。

<!DOCTYPE html>
<html>
   <body style="background-color:#D5F5E3">
      <button onclick=getvalue()>Click For Value</button>
      <script>
         function getvalue(){
            let a=undefined;
            let b = 22;
            a || (a = b)
            document.write("The Value of a is:" +a)
         }
      </script>
   </body>
</html>

指令碼執行後,將在網頁上生成一個包含按鈕的輸出。如果使用者單擊該按鈕,則會觸發事件並顯示 x 的值。

使用空值合併運算子 (??)

邏輯運算子 **空值合併 (??)** 運算子返回其左側運算元,除非其右側運算元為 null 或 undefined,在這種情況下,它返回其右側運算元。

語法

以下是 **空值合併 (??)** 的語法:

leftExpr ?? rightExpr

示例

考慮以下示例,我們使用 **空值合併運算子** 執行指令碼以將值設定為“undefined”。

<!DOCTYPE html>
<html>
   <body>
      <script>
         let a="Benz";
         let b = undefined;
         let c = "Audi";
         a ??= c;
         b ??= c;
         document.write("The vale of a:"+a+"<br>")
         document.write("The vale of b:"+b)
      </script>
   </body>
</html>

執行上述指令碼後,將彈出輸出視窗,顯示網頁上的值。我們可以觀察到並找到顯示的“undefined”值。

示例

執行以下指令碼,並觀察我們如何使用 **空值合併運算子** 將值設定為“undefined”。

<!DOCTYPE html>
<html>
   <body style="background-color:#E8DAEF">
      <button onclick=undefinedvalue()>Click For Values</button>
      <script>
         function undefinedvalue(){
            let array = ["RX100", 45, undefined, "Vespa", undefined]
            array.forEach((item, index)=>{
               array[index] ??= "TutorialsPoint"
            })
            document.write(JSON.stringify(array))
         }
      </script>
   </body>
</html>

指令碼執行後,將在網頁上生成一個包含點選按鈕的輸出。當用戶單擊按鈕時,將觸發事件並顯示一個數組以及顯示的 undefined 值。

更新於:2023年4月21日

914 次瀏覽

啟動您的 職業生涯

完成課程獲得認證

開始學習
廣告
© . All rights reserved.