La première fois que je travaille avec jQuery.inArray()
et ça fait un peu bizarre.
Si l'objet est dans le tableau, il retournera 0, mais 0 est faux en Javascript. Donc, ce qui suit affichera: "n'est PAS dans le tableau"
var myarray = [];
myarray.push("test");
if(jQuery.inArray("test", myarray)) {
console.log("is in array");
} else {
console.log("is NOT in array");
}
Je vais devoir changer la déclaration if en:
if(jQuery.inArray("test", myarray)==0)
Mais cela rend le code illisible. Surtout pour quelqu'un qui ne connaît pas cette fonction. Ils s'attendront à ce que jQuery.inArray ("test", myarray) donne la valeur true lorsque "test" est dans le tableau.
Alors ma question est, pourquoi est-ce fait de cette façon? Je n'aime vraiment pas ça. Mais il doit y avoir une bonne raison de le faire comme ça.
if jQuery.inArray('test', myarray) isn't -1