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>
輸出
廣告