2017-01-12 3 views
0

Ich habe dieses Array:Ermittelt den Index des ersten Elements in einem Array mit Wert größer als x

var array = [400, 4000, 400, 400, 4000]; 

Wie kann ich den Index des ersten Elements mit dem Wert erhalten mehr als 400?

Hinweis: Während ich sicherstellte, dass diese Frage einzigartig war, stieß ich auf Fragen, die dasselbe Problem stellten - aber für verschiedene Programmiersprachen.
Wenn es Dubletten meiner Frage gibt, die für JS gelten, möchte ich sie wirklich sehen.

Antwort

3

Sie findIndex hier

Überprüfung dieser Ausschnitt

var array = [400, 4000, 400, 400, 4000]; 
 
var index=array.findIndex(function(number) { 
 
    return number > 400; 
 
}); 
 
console.log(index);
können

+1

oder in ES6 'var index = array.findIndex (n => n> 400);' – Alnitak

+0

@RobG so ist es - ich habe die MDN-Seite falsch gelesen, wie es in ES5 war – Alnitak

+1

Es ist ein wenig verwirrend, dass die Ausgabe Zahlen sind eine von der Jahreszahl. Vielleicht sollten sie ein Jahr überspringen, damit sie sich angleichen. ;-) – RobG

1

Verwenden Sie einfach eine einfache for Schleife und überprüfen Sie jedes Element.

var array = [400, 4000, 400, 400, 4000]; 
 

 
var result; 
 

 
for(var i=0, l=array.length; i<l; i++){ 
 
    if(array[i] > 400){ 
 
    result = i; 
 
    break; 
 
    } 
 
} 
 

 
if(typeof result !== 'undefined'){ 
 
    console.log('number greater than 400 found at array index: ' + result); 
 
} else { 
 
    console.log('no number greater than 400 found in the given arrry.'); 
 
}

Lesen up: for - JavaScript | MDN

Verwandte Themen