Heim >Web-Frontend >js-Tutorial >Analyse der Vorsichtsmaßnahmen für die inArray-Methode in jQuery_jquery
In diesem Artikel werden die Vorsichtsmaßnahmen für die inArray-Methode in jQuery analysiert. Teilen Sie es als Referenz mit allen. Die Details lauten wie folgt:
jquery bietet Webentwicklern großen Komfort. Der Zweck des Schreibens dieses Artikels besteht darin, alle daran zu erinnern, mit der inArray-Methode in jquery vorsichtig zu sein.
Jeder weiß, dass JavaScript eine schwach typisierte Sprache ist. Sie können nach Belieben zwischen Zahlen- und Zeichentypen wechseln (zum Beispiel: 1 ""="1"). Beginnen wir mit dem Thema:
Eine Methode inArray(ele, array) von jquery besteht darin, zu bestimmen, ob ele im Array vorhanden ist. Der Rückgabewert ist der Index, wenn das Element zum ersten Mal im Array erscheint.
Zum Beispiel:
var a = 1; var array = [1,2,3]; var b = $.inArray(a, array);
Zu diesem Zeitpunkt ist b gleich 0.
Wenn jedoch zu diesem Zeitpunkt a="1" gesetzt ist, führen Sie es erneut aus:
b = $.inArray(a, array);
Zu diesem Zeitpunkt ist b gleich -1. Dies wird ein Problem verursachen, da einige Leute möglicherweise nur dieses Urteil erhalten möchten: „1“ == 1. Dieser logische Ausdruck befindet sich tatsächlich in der JavaScript-Umgebung und gibt „true“ zurück. In inArray ist der zurückgegebene Wert jedoch „true“. Wenn also ein Array Nichtobjektvariablen speichert, insbesondere bei der Beurteilung von Zahlen, ist es am besten, die ursprüngliche Beurteilungsmethode zu verwenden.
Sie können zur Überprüfung auch reguläre Ausdrücke wie folgt verwenden:
var a = 1; var reg = new RegExp("(^"+a+",)|(^"+a+"$)|(,"+a+",)|(,"+a+"$)"); var array = [1,2,3,4]; reg.test(array.toString());// true a = "1"; reg.test(array.toString());// true
Okay, das ist alles~~
Leser, die an weiteren Inhalten im Zusammenhang mit jQuery-Arrays interessiert sind, können sich das spezielle Thema auf dieser Website ansehen: „Zusammenfassung der Verwendung von jQuery-Arrays“
Ich hoffe, dass dieser Artikel allen in der jQuery-Programmierung hilfreich sein wird.