zl程序教程

您现在的位置是:首页 >  前端

当前栏目

[Javascript] Lodash: Refactoring Simple For Loops (_.find, _.findLast, _.filter)

JavaScript for Find filter Simple _. lodash
2023-09-14 09:00:55 时间

This lesson shows how to refactor your old loops into using a simpler and more powerful lodash-style. We will start by looking at how many people traditionally write JavaScript for loops and then talk about the alternate style and benefits that Lodash offers.

 

If you want to find one value from the value, you can use:

_.find 

or 

_.findLast

 

If you want to get all match results, you can use:

_.filter()

 

var people = [
    {name: "Frank", age: 30, gender: 'male'},
    {name: "Bill", age: 22, gender: 'male'},
    {name: "Carol", age: 52, gender: 'female'},
    {name: "Susan", age: 10, gender: 'female'},
    {name: "Stephanie", age: 22, gender: 'female'},
    {name: "Kyle", age: 68, gender: 'male'},
    {name: "Hank", age: 22, gender: 'male'},
    {name: "Susan", age: 20, gender: 'female'}
];

//Loop: find one 'Susan'
var susan;
for (var i = 0; i < people.length; i++) {
    var person = people[i];
    if(person.name == "Susan"){
        susan = person;
        break;
    }
}

console.log(susan);

//Lodash: find one 'Susan'
var susan2 = _.find(people, {name: 'Susan'});

console.log(susan2);


//Loop: find all 'Susan'
var susans = [];
for (var i = 0; i < people.length; i++) {
    var person = people[i];
    if(person.name == "Susan"){
        susans.push(person);
    }
}

console.log(susans);

//Lodash: find all 'Susan'
var susans2 = _.filter(people, {name: 'Susan'});

console.log(susans2);