-1

Possible Duplicate:
How do you check if a variable is an array in JavaScript?

How can I check if a variable is an array (so I can handle each arrayvalue) or a single arrayvalue?

Community
  • 1
  • 1
Henderk
  • 159
  • 1
  • 3
  • 11
  • 2
    also [JavaScript: Check if object is array?](http://stackoverflow.com/questions/4775722/javascript-check-if-object-is-array) – mellamokb Oct 04 '11 at 20:51
  • Yes, but none of the suggested duplicates were answered with this elegant solution very useful for my specific problem... Anyway thanks! – Henderk Oct 04 '11 at 21:51

1 Answers1

1

From the MDN page for isArray which is part of the ECMAScript 5 standard:

if(!Array.isArray) {
  Array.isArray = function (arg) {
    return Object.prototype.toString.call(arg) == '[object Array]';
  };
}

In many cases, you can also just check to see if there is a .length property (this is often what jQuery does) because this will also accept any array-like object that isn't actually an array, but can be iterated like one. Obviously, if you have things that do have a .length property that you don't want treated like an array, this will get fooled by that situation so you have to know which you want:

function isArrayLike(item) {
    return(typeof item.length != "undefined");
}
jfriend00
  • 683,504
  • 96
  • 985
  • 979