find方法如何与数组配合使用?

时间:2019-06-11 06:11:08

标签: javascript

假设我有一个数组,我想在数组中找到大于25的第一个数字。它检查条件,即数字是否大于25,并在条件满足时返回true,但返回值请帮我调试它的工作方式。

const numbers=[10,20,30,40,50]

function findNumJS(numbers,num){
  const output=numbers.find(function(n){
      return n>num
  })
  return output
}
console.log(findNumJS(numbers,25))

6 个答案:

答案 0 :(得分:0)

Array​.prototype​.find()

  

find()方法返回满足提供的测试功能的数组中第一个元素的 。否则,返回 未定义

如果要返回布尔值,则可以使用Array​.prototype​.some()

const numbers=[10,20,30,40,50]

function findNumJS(numbers,num){
  const output=numbers.some(function(n){
      return n>num
  })
  return output
}
console.log(findNumJS(numbers,25))

答案 1 :(得分:0)

find()方法返回通过测试的数组中第一个元素的值(作为函数提供)。

find()方法对数组中存在的每个元素执行一次功能:

如果找到函数返回真值的数组元素,则find()返回该数组元素的值(并且不检查其余值) 否则返回undefined 注意:find()不会对空数组执行该函数。

注意:find()不会更改原始数组。

更多信息:https://www.w3schools.com/jsref/jsref_find.asp

答案 2 :(得分:0)

JavaScript Array.find(callback)函数将返回数组的第一项,该函数将返回true

答案 3 :(得分:0)

function isBigEnough(value) {
  return function(element, index, array) {
    return (element >= value);
  }
}
var filtered = numbers = [10, 20, 30, 40, 50].filter(isBigEnough(25));
console.log(filtered)

答案 4 :(得分:0)

实际上,find方法逐一遍历每个数组项并检查提供的条件。如果满足提供的条件,则find方法立即返回匹配的项目。

const numbers=[10,20,30,40,50]
numbers.find(number => number > 25)

//In first iteration number -> 10 ; which is not greater than 25
//In second iteration number -> 20 ; which is not greater than 25
//In third iteration number -> 30 ; which is greater than 25, so the condition satisfied and it returns the value

答案 5 :(得分:0)

如果在数组中找到第一个元素,则可以使用 .find

,但您要检查是否有满足您条件的元素。因此您应该使用 .some

对于您的示例,您可以这样更改它:

const numbers=[10,20,30,40,50]

function findNumJS(numbers,num){
  const output=numbers.some(function(n){
      return n>num
  })
  return output
}
console.log(findNumJS(numbers,25))

您可以像这样或仅使用用户.some来减少代码。

const numbers=[10,20,30,40,50]

function findNumJS(numbers,num){
  return numbers.some(function(n){
      return n>num
  })
}
console.log(findNumJS(numbers,25))

有关更多信息,请参见: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/some