在 JavaScript 中,typeof
运算符主要用于确定变量的基本类型,但它并不能直接用来判断一个变量是否是数组类型。typeof
主要用于检测变量是 undefined
, string
, number
, boolean
, symbol
, bigint
, 或 object
等基本类型。对于数组,typeof
会将其识别为 object
类型。
let array = [1, 2, 3];
let string = "Hello";
let number = 42;
let object = {};
console.log(typeof array); // 输出: "object"
console.log(typeof string); // 输出: "string"
console.log(typeof number); // 输出: "number"
console.log(typeof object); // 输出: "object"
判断数组类型的正确方法
为了判断一个变量是否是数组,你可以使用以下方法之一:
-
使用
Array.isArray()
:Array.isArray()
是 ECMAScript 5 引入的一个方法,专门用于检测一个值是否是数组。
-
使用
instanceof Array
:instanceof
操作符可以用来检测一个对象是否是某个构造函数的实例。
-
使用
Object.prototype.toString.call()
:toString()
方法返回一个表示对象的字符串。通过检查[object Array]
字符串来判断是否为数组。