📜  javascript 获取 var 的类型 - Javascript (1)

📅  最后修改于: 2023-12-03 15:16:15.307000             🧑  作者: Mango

Javascript 获取 var 的类型

在 JavaScript 中,变量的类型是不固定的,可以根据赋值的不同而变化。因此,获取变量的类型是非常重要的。

typeof 运算符

我们可以使用 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。

instanceof 运算符

除了 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 在检测某些类型时可能会返回不同的结果。