📅  最后修改于: 2023-12-03 15:16:15.307000             🧑  作者: Mango
在 JavaScript 中,变量的类型是不固定的,可以根据赋值的不同而变化。因此,获取变量的类型是非常重要的。
我们可以使用 typeof 运算符来获取一个变量的类型。typeof 会返回一个字符串,表示变量的类型。
下面是一个使用 typeof 获取变量类型的例子:
let x = "hello";
console.log(typeof x); // 输出 "string"
let y = 12;
console.log(typeof y); // 输出 "number"
let z = true;
console.log(typeof z); // 输出 "boolean"
let a = undefined;
console.log(typeof a); // 输出 "undefined"
let b = null;
console.log(typeof b); // 输出 "object"
需要注意的是,typeof 返回的类型有时会非常奇怪。例如,typeof null 会返回 "object",这是一个已知的 Bug。
除了 typeof,我们还可以使用 instanceof 运算符来获取一个变量的类型。instanceof 操作符的语法是:
object instanceof type
其中,object 是要检测的变量,type 是要检测的类型。如果 object 是 type 的实例,那么 instanceof 返回 true,否则返回 false。
下面是一个使用 instanceof 获取变量类型的例子:
let x = new String("hello");
console.log(x instanceof String); // 输出 true
let y = new Number(12);
console.log(y instanceof Number); // 输出 true
let z = true;
console.log(z instanceof Boolean); // 输出 false
需要注意的是,typeof 和 instanceof 在检测某些类型时可能会返回不同的结果。例如,typeof NaN 会返回 "number",而 NaN instanceof Number 会返回 false。
获取变量类型在开发过程中是非常常见的操作。我们可以使用 typeof 或 instanceof 来获取变量类型。需要注意的是,typeof 返回的类型有时会非常奇怪,而 instanceof 在检测某些类型时可能会返回不同的结果。