code

Lodash _.filter 함수는 하나의 조건만 충족해야 합니다.

starcafe 2023. 9. 25. 22:53
반응형

Lodash _.filter 함수는 하나의 조건만 충족해야 합니다.

저는 현재 Lodash _.filter() 기능을 사용하여 사용자 검색을 기반으로 특정 조건을 충족하는 개체를 필터링하고 있으며, 이는 도로 주소, 도시, 국가 중 하나입니다.

검색 문자열을 추출했으며 각 개체 내의 여러 값에 대해 이를 필터링하고 싶으며 해당 키 중 하나에서 문자열이 발견되면 개체를 반환해야 합니다.

설명하자면 웹사이트의 예시를 사용하고 싶습니다.

var users = [
  { 'user': 'barney',  'age': 36, 'active': true },
  { 'user': 'fred',    'age': 40, 'active': false },
  { 'user': 'pebbles', 'age': 1,  'active': true }
];

// using the `_.matches` callback shorthand
_.result(_.find(users, { 'age': 1, 'active': true }), 'user');

이 예에서 36세이거나 활동 중인 사용자를 어떻게 필터링합니까?

문서에 따르면 반환할 개체에 대해서는 위의 예에 따라 두 조건이 모두 충족되어야 할 것으로 보입니다.

다음에 함수를 전달할 수 있습니다.

_.filter(users, function(user) {
    return user.age === 36 || user.active;
});

다음과 같은 기술을 사용할 수 있습니다.

_.result(_.find(users, function(user) {
    return user.age === 36 || user.active;
}), 'user');

Vue.js에서 두번째 솔루션도 작동합니다.

users.filter(user => {
                return user.age == 36 || user.active;
            });

언급URL : https://stackoverflow.com/questions/31587555/lodash-filter-function-must-only-meet-one-condition

반응형