JavaScript:如何檢查字串是字面量還是物件?


在本文中,我們將探討字串以及根據需求如何將其用作字面量和物件。

JavaScript 字面量

JavaScript **字面量** 可以理解為在原始碼中表示固定值的表示形式。在大多數語言中,值由整數、浮點數、字串、布林值、字元、陣列、記錄等表示。

JavaScript 物件

另一方面,JavaScript **物件** 可以定義為一組無序的原始資料型別(有時還有引用資料型別)的列表,這些型別以鍵值對的形式儲存。在此列表中,每個專案都定義為一個屬性。

typeof 運算子

現在我們如何檢查字串是字面量還是物件。

為此,我們將使用 **typeof** 運算子。**typeof** 運算子返回 JavaScript 中任何資料型別的型別並返回其實際資料型別。運算元可以是字面量或資料結構,例如變數、函式或物件。運算子返回資料型別。

我們還可以使用 **instanceof** 運算子來比較例項與 Object。它將返回特定物件的例項。

示例

在下面的示例中,我們將以字面量形式和物件形式定義字串。定義好形式後,我們將使用 typeof 或 instanceof 方法來檢查字串是字面量型別還是物件型別。

# index.html

<!DOCTYPE html>
<html lang="en">
<head>
   <title>Checking String type</title>
   <meta charset="UTF-8">
   <meta http-equiv="X-UA-Compatible"content="IE=edge">
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
</head>
<body>
   <h1 style="color: green;">Welcome to Tutorials Point</h1>
   <script>
      function check(str) {
         if(str instanceof String) {
            return "It is an object of string";
         } else {
            if(typeof str === "string") {
               return "It is a string literal";
            } else {
               return "another type";
            }
         }
      }
      // Pass a literal
      console.log(check("Simply Learning"));

      // Pass an object of string
      let s = new String("Hi");
      console.log(check(s));
   </script>
</body>
</html>

輸出

更新於: 2022年4月26日

2K+ 次檢視

開啟您的 職業生涯

透過完成課程獲得認證

開始學習
廣告