Heim > Web-Frontend > js-Tutorial > So ermitteln Sie, ob sich ein Wert in einem Array in Javascript befindet

So ermitteln Sie, ob sich ein Wert in einem Array in Javascript befindet

青灯夜游
Freigeben: 2021-12-07 14:46:37
Original
9156 Leute haben es durchsucht

Methode: 1. Verwenden Sie die for-Anweisung, um das Array zu durchlaufen und die Array-Elemente mit dem angegebenen Wert zu vergleichen. Wenn sie gleich sind, sind sie vorhanden. 2. Verwenden Sie die indexOf-Methode, um den Indexwert zurückzugeben, wenn das Element im Array vorhanden ist . Wenn es nicht existiert, geben Sie „-1“ zurück. 3. Verwenden Sie die inArray()-Methode, um den Indexwert zurückzugeben, wenn das Element existiert, oder „-1“, wenn es nicht existiert.

So ermitteln Sie, ob sich ein Wert in einem Array in Javascript befindet

Die Betriebsumgebung dieses Tutorials: Windows7-System, Javascript1.8.5 &&jquery1.10.2-Version, Dell G3-Computer.

Es gibt ein Array in js. Wie kann man feststellen, ob ein Element in diesem Array vorhanden ist? Der Code lautet wie folgt:

var arr = ['a','s','d','f'];
console.info(isInArray(arr,'a'));//循环的方式

/**
 * 使用循环的方式判断一个元素是否存在于一个数组中
 * @param {Object} arr 数组
 * @param {Object} value 元素值
 */
function isInArray(arr,value){
    for(var i = 0; i < arr.length; i++){
        if(value === arr[i]){
            return true;
        }
    }
    return false;
}
Nach dem Login kopieren

Diese Methode ist eine allgemeinere Methode, aber Sie müssen Schreiben Sie die Funktion selbst. Schauen wir uns den zweiten Weg an:

var arr = [&#39;a&#39;,&#39;s&#39;,&#39;d&#39;,&#39;f&#39;];
console.info(arr.indexOf(&#39;a&#39;));//在IE某些版本中不支持,可以自行扩展
Nach dem Login kopieren

Dieser Weg besteht darin, direkt die indexOf-Methode des Arrays zu verwenden, um zu bestimmen, ob das Element im Array vorhanden ist, und dann den Indexwert des Elements zurückzugeben das Array. Wenn es nicht existiert, dann geben Sie - 1 zurück. Beachten Sie, dass bei indexOf die Groß-/Kleinschreibung beachtet wird und der Buchstabe O großgeschrieben werden muss, da sonst ein Fehler gemeldet wird. Außerdem funktioniert diese Methode in einigen Versionen nicht Daher müssen Sie vor der Verwendung eine Beurteilung und Änderung vornehmen:

/**
 * 使用indexOf判断元素是否存在于数组中
 * @param {Object} arr 数组
 * @param {Object} value 元素值
 */
function isInArray3(arr,value){
    if(arr.indexOf&&typeof(arr.indexOf)==&#39;function&#39;){
        var index = arr.indexOf(value);
        if(index >= 0){
            return true;
        }
    }
    return false;
}
Nach dem Login kopieren

Die dritte Möglichkeit besteht darin, die inArray-Methode von jquery zu verwenden Existiert nicht im Array und gibt dann -1 zurück. Der Code lautet wie folgt:

/**
 * 使用jquery的inArray方法判断元素是否存在于数组中
 * @param {Object} arr 数组
 * @param {Object} value 元素值
 */
function isInArray2(arr,value){
    var index = $.inArray(value,arr);
    if(index >= 0){
        return true;
    }
    return false;
}
Nach dem Login kopieren

Diese Methode kann zum Löschen von Elementen mit unbekannten Indexwerten in einem Array verwendet werden. Der Code lautet wie folgt:

var arr = [&#39;a&#39;,&#39;s&#39;,&#39;d&#39;,&#39;f&#39;];
console.info("删除元素之前的数组:"+arr);
arr.splice($.inArray(&#39;a&#39;,arr),1);
console.info("删除元素之后的数组:"+arr);
Nach dem Login kopieren

Die Ausführung Das Ergebnis ist:

[Web浏览器] "删除元素之前的数组:a,s,d,f"    /test/index.html (12)
[Web浏览器] "删除元素之后的数组:s,d,f"  /test/index.html (14)
Nach dem Login kopieren

[Verwandte Empfehlungen: Javascript-Lerntutorial]

Das obige ist der detaillierte Inhalt vonSo ermitteln Sie, ob sich ein Wert in einem Array in Javascript befindet. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage