Junior
¿Cómo se puede verificar que este campo es un array?
sobes.tech AI
Respuesta de la IA
Existen varias formas de verificar si un campo dado es un array:
-
Array.isArray(): La forma más preferida y moderna.// Verifica si el valor es un array. // Devuelve true o false. Array.isArray([]); // true Array.isArray({}); // false Array.isArray(null); // false Array.isArray(undefined); // false Array.isArray(123); // false Array.isArray('cadena'); // false -
instanceof Array: Funciona para arrays creados en el marco actual.// Verifica si el objeto es una instancia de la clase Array. // Puede dar resultados incorrectos al trabajar con iframes. [] instanceof Array; // true new Array() instanceof Array; // true ({}); // false -
Object.prototype.toString.call(): Método confiable que evita problemas coninstanceofen diferentes marcos.// Devuelve una representación en cadena del tipo del objeto. // Para arrays devuelve "[object Array]". Object.prototype.toString.call([]); // "[object Array]" Object.prototype.toString.call({}); // "[object Object]" Object.prototype.toString.call(null); // "[object Null]" Object.prototype.toString.call(undefined); // "[object Undefined]" -
Verificación de la propiedad
constructor: Menos confiable, ya que la propiedadconstructorpuede ser modificada.// Verifica si el constructor del objeto es Array. [].constructor === Array; // true ({}).constructor === Object; // false
El método más recomendable y confiable en la mayoría de los casos es usar Array.isArray().