Junior
Hoe controleer je of een object een array is?
sobes.tech AI
Antwoord van AI
Er zijn verschillende manieren:
-
Gebruik
Array.isArray(). Dit is de meest betrouwbare en aanbevolen methode.const arr = [1, 2, 3]; const obj = { a: 1 }; console.log(Array.isArray(arr)); // true console.log(Array.isArray(obj)); // false -
Gebruik
instanceof Array. Werkt voor arrays die in de huidige frame of window zijn gemaakt. Kan valse resultaten geven bij werken met frames of cross-domeinscenario's.const arr = [1, 2, 3]; const obj = { a: 1 }; console.log(arr instanceof Array); // true console.log(obj instanceof Array); // false -
Gebruik
Object.prototype.toString.call(). Geeft een stringrepresentatie van het type van het object. Voor arrays is dit"[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
De meest aanbevolen methode is het gebruik van Array.isArray(), omdat het betrouwbaar is en geen bijwerkingen heeft die verband houden met de uitvoeringcontext.