1. 程式人生 > >Why does typeof array with objects return “Object” and not “Array”?

Why does typeof array with objects return “Object” and not “Array”?

https://stackoverflow.com/questions/4775722/check-if-object-is-an-array

One of the weird behaviour and spec in Javascript is the typeof Array is Object.

You can check if the variable is an array in couple of ways:

var isArr = data instanceof Array; var isArr = Array.isArray(data);

But the most reliable way is:

isArr = Object.prototype.toString.call(data) == '[object Array]';

Since you tagged your question with jQuery, you can use jQuery isArray function:

var isArr = $.isArray(data);