如果 a 是 Array
的实例。我们知道typeof a
将返回'object'
,但我想让它返回 'array'
,我可以这样做吗?
如果可以的话我该怎么做 如果没有那为什么不呢?
最佳答案
不,你不能 - 数组是一个对象,简单明了:
const aRealArray = [1, 2, 3];
console.log(typeof aRealArray);
但是,您可以检查某些内容是否是数组,方法是使用Array.isArray
或instanceof
const aRealArray = [1, 2, 3];
console.log(Array.isArray(aRealArray));
console.log(aRealArray instanceof Array);
console.log(Object.prototype.toString.call(aRealArray));
请注意,Array.isArray
是更可靠的版本(正如下面 @MattBrowne 中的 comments 所指出的,它可以跨 iframe 工作)。 instanceof
只是检查 Array.prototype
是否在原型(prototype)链上。
关于javascript - JavaScript 中 typeof Array'instance 可以返回 'Array' 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55446771/