Get the index of the first element in an array wit

2020-06-05 01:41发布

问题:

I have this array:

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

How can I get the index of the first element with value greater than 400?

Note: While making sure this question was unique, I came across questions asking this same problem- but for different programming languages.
If there are duplicates of my question that apply to JS, I'd really want to see them.

回答1:

You can use findIndex here

check this snippet

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



回答2:

You can use a simple for loop and check each 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.');
}

Read up: for - JavaScript | MDN



回答3:

var array = [0, 0, 3, 5, 6];
var x = 5;
var i = 0;
while (array[i] <= x) {
    i++;
}