Junior
¿Cómo verificar si un objeto es un array?
sobes.tech AI
Respuesta de la IA
Existen varias formas:
-
Usar
Array.isArray(). Es la forma más confiable y recomendada.const arr = [1, 2, 3]; const obj = { a: 1 }; console.log(Array.isArray(arr)); // true console.log(Array.isArray(obj)); // false -
Usar
instanceof Array. Funciona para arrays creados en el marco o ventana actual. Puede dar resultados falsos al trabajar con marcos o escenarios de dominio cruzado.const arr = [1, 2, 3]; const obj = { a: 1 }; console.log(arr instanceof Array); // true console.log(obj instanceof Array); // false -
Usar
Object.prototype.toString.call(). Devuelve una representación en cadena del tipo del objeto. Para arrays, es"[object Array]".const arr = [1, 2, 3]; const obj = { a: 1 }; console.log(Object.prototype.toString.call(arr) === '[object Array]'); // true console.log(Object.prototype.toString.call(obj) === '[object Array]'); // false
El método más recomendable es usar Array.isArray(), ya que es confiable y no tiene efectos secundarios relacionados con el contexto de ejecución.