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>输出

广告
数据结构
网络
关系型数据库管理系统
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP