Languages
[Edit]
EN

JavaScript - check if variable is array type?

11 points
Created by:
Root-ssh
68300

In JavaScript it is possible to check is object array type in following way.

1. Built in Array.isArray method example

// ONLINE-RUNNER:browser;

console.log(Array.isArray([ ])); // true
console.log(Array.isArray(new Array())); // true

console.log(Array.isArray({ })); // false
console.log(Array.isArray(new Object())); // false
console.log(Array.isArray(5)); // false
console.log(Array.isArray('a')); // false
console.log(Array.isArray(true)); // false
console.log(Array.isArray(function() { })); // false
console.log(Array.isArray(new function() { })); // false

2. instanceof operator test example

Note: if web browser does not support Array.isArray method this approach is useful.

// ONLINE-RUNNER:browser;

if (!Array.isArray) {
    Array.isArray = function(array) {
        return (array instanceof Array);
    };
}

// Example:

console.log(Array.isArray([ ])); // true
console.log(Array.isArray(new Array())); // true

console.log(Array.isArray({ })); // false
console.log(Array.isArray(new Object())); // false
console.log(Array.isArray(5)); // false
console.log(Array.isArray('a')); // false
console.log(Array.isArray(true)); // false
console.log(Array.isArray(function() { })); // false
console.log(Array.isArray(new function() { })); // false

3. constructor property test example

Note: if web browser does not support Array.isArray method this approach is useful.

// ONLINE-RUNNER:browser;

if (!Array.isArray) {
    Array.isArray = function(array) {
        return array.constructor == Array;
    };
}

// Example:

console.log(Array.isArray([ ])); // true
console.log(Array.isArray(new Array())); // true

console.log(Array.isArray({ })); // false
console.log(Array.isArray(new Object())); // false
console.log(Array.isArray(5)); // false
console.log(Array.isArray('a')); // false
console.log(Array.isArray(true)); // false
console.log(Array.isArray(function() { })); // false
console.log(Array.isArray(new function() { })); // false

4. toString result test example (Polyfill extension)

Note: if web browser does not support Array.isArray method this approach is useful.

// ONLINE-RUNNER:browser;

// Polyfill:

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

// Example:

console.log(Array.isArray([ ])); // true
console.log(Array.isArray(new Array())); // true

console.log(Array.isArray({ })); // false
console.log(Array.isArray(new Object())); // false
console.log(Array.isArray(5)); // false
console.log(Array.isArray('a')); // false
console.log(Array.isArray(true)); // false
console.log(Array.isArray(function() { })); // false
console.log(Array.isArray(new function() { })); // false
Native Advertising
50 000 ad impressions - 449$
🚀
Get your tech brand or product in front of software developers.
For more information contact us:
Red dot
Dirask - friendly IT community for everyone.

❤️💻 🙂

Join