78 votes

Comment créer un tableau si un tableau n'existe pas encore ?

Comment puis-je créer un tableau s'il n'existe pas encore ? En d'autres termes, comment utiliser par défaut une variable sur un tableau vide ?

91voto

Rich Points 1767

Si vous voulez vérifier si un tableau x existe et le créer s'il n'existe pas, vous pouvez faire

x = ( typeof x != 'undefined' && x instanceof Array ) ? x : []

68voto

Brian Campbell Points 101107
var arr = arr || [];

12voto

Gumbo Points 279147

Vous pouvez utiliser l'opérateurtypeof pour tester la non définie et l'opérateurinstanceof pour tester s'il s'agit d'une instance de tableau :

if (typeof arr == "undefined" || !(arr instanceof Array)) {
    var arr = [];
}

9voto

CMS Points 315406

Si vous voulez vérifier si l'objet est déjà un tableau, pour éviter les problèmes bien connus de l'opérateur instanceof lorsque vous travaillez dans des environnements DOM à cadres multiples, vous pouvez utiliser la méthode Object.prototype.toString :

arr = Object.prototype.toString.call(arr) == "[object Array]" ? arr : [];

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X