JavaScript Lodash _.find() 方法

JavaScript Lodash _.find() 方法

什么是 _.find() 方法

此方法用于搜索任何元素或满足某些条件的第一个元素。如果我们有一个对象或数组,并且我们想要知道满足给定条件的数组的第一个元素。那么我们将应用这个函数。

语法

_.find(object,condition,startingIndex)

这个函数接受三个参数,其中两个参数是必需的,一个是可选的。

  • object: 这个参数接受我们要从中搜索元素的数组或对象。
  • condition: 这是条件或函数,它接受数组的每个值并评估其值。如果元素满足条件,则将其返回给结果变量。
  • startingIndex: 这是一个可选参数,它指定从哪个索引开始搜索元素,而不是从列表的开头开始。

返回值: 这个函数将返回满足给定条件的列表中的第一个元素。如果没有元素存在,则返回undefined。

现在,我们将看到_.find()方法的各种示例:

示例1

Javascript代码:

// importing the library
const _ = require('lodash');

//list for the _.find() method
let myList = [2, 3, 5, 7, 10, 13, 14, 15, 19];

//applying the _.find() method
let result = _.find(myList, function(num) {
    if (num * num > 100) {
        return true;
    }
});
//printing the resultant array
console.log(result);

输出:

13

解释:

在以上代码中,我们使用require关键字导入了lodash库。然后我们创建了一个整数列表,用于使用_.find()方法。然后我们在给定的列表上应用了_.find()方法,在条件部分中,我们使用一个接受一个数字的函数。如果给定数字的平方大于100,则返回true。

在此函数中,传递了列表的每个值,并且我们得到了第一个值,即13,它的平方大于100,因此它将100存储在结果变量中。现在我们使用console.log()语句打印了结果值。

示例2

Javascript代码:

// importing the library
const _ = require('lodash');

//list for the _.find() method
let myList =[-89, 15, -69, -56, -1, 0, 29, 7, 10, 13, 15];

//applying the _.find() method
let result = _.find(myList, function(n) {
    if (n > 10) {
        return true;
    }
}, 2);
//printing the resultant array
console.log(result);

输出:

29

说明:

在上述代码中,我们使用require关键字导入了lodash库。然后我们创建了一个整数列表来使用_.find()方法。然后我们在给定的列表上应用了_.find()方法,在条件部分中,我们使用了一个接受一个数字的函数。如果数字大于十,则返回true,但我们还使用了索引的第三个参数。

因此,在上面的示例中,第一个大于10的元素是15,但它的索引值为1,所以不会被考虑。然后我们有下一个值为29,大于十,并且它的索引值也大于2。所以我们得到的结果是29。

示例3

Javascript代码:

// importing the library
const _ = require('lodash');

//object for the _.find() method
let myObj= [
    {'name': 'Ayush', marks:'85'},
    {'name': 'Shivani', marks:'98'},
    {'name': 'Gopal', marks:'96'},
    {'name': 'Mansi', marks:'56'},
    {'name': 'Ankit', marks:'68'},
];

//applying the _.find() method
let result = _.find(myObj, function(obj) {
    if (obj.marks >= 85) {
        return true;
    }
});
//printing the resultant array
console.log(result);

输出:

{name: 'Ayush', marks:'85'}

解释:

在以上代码中,我们使用require关键字导入了lodash库。然后我们创建了一个对象来使用_.find()方法。然后我们在给定的列表上应用了_.find()方法,在条件部分使用了一个接受一个对象的函数。如果对象的分数大于或等于85,则返回true。所以Ayush有85分,满足条件,我们得到了结果作为一个列表,并使用console.log()语句打印出来。

示例4

Javascript代码:

// importing the library
const _ = require('lodash');

//list for the _.find() method
let myList =[-89, 15, -69, -56, -1, 0, 29, 7, 10, 13, 15];

//applying the _.find() method
let result = _.find(myList, function(n) {
    if (n < -90) {
        return true;
    }
}, 2);
//printing the resultant array
console.log(result);

输出:

undefined

解释:

在上述代码中,我们发现元素小于-90,但它不存在。因此,我们得到的答案是未定义。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程