objPickBy
Returns a new object containing only the entries for which the callback returns trueTrue.
The callback receives (value, key), in that order, matching the rest of the ecosystem. Only the top level is inspected — a nested object is carried over as it is, never filtered.
The original object is not modified. If the first argument is not an object, nullNone is returned.
Parameters
| Name | Type | Required | Default |
|---|---|---|---|
obj | objectMap<String, dynamic>dict | ● | – |
| The object to filter. It is not modified. | |||
predicate | functionbool Function(dynamic value, String key)Callable | ● | – |
Called as (value, key) for every entry. The entry is kept when it returns trueTrue. | |||
Returns
object | null
Map<String, dynamic>?
dict | None
Examples
javascript
objPickBy({ a: 1, b: 2, c: 3 }, (value) => value > 1); // Returns { b: 2, c: 3 }
objPickBy({ a: 1, b: 2 }, (value, key) => key === 'a'); // Returns { a: 1 }
objPickBy({ a: null, b: 1 }, (value) => value !== null); // Returns { b: 1 }
objPickBy({ a: 1 }, () => false); // Returns {}dart
objPickBy({'a': 1, 'b': 2, 'c': 3}, (value, key) => value > 1); // Returns {'b': 2, 'c': 3}
objPickBy({'a': 1, 'b': 2}, (value, key) => key == 'a'); // Returns {'a': 1}
objPickBy({'a': null, 'b': 1}, (value, key) => value != null); // Returns {'b': 1}
objPickBy({'a': 1}, (value, key) => false); // Returns {}python
objPickBy({'a': 1, 'b': 2, 'c': 3}, lambda value, key: value > 1) # Returns {'b': 2, 'c': 3}
objPickBy({'a': 1, 'b': 2}, lambda value, key: key == 'a') # Returns {'a': 1}
objPickBy({'a': None, 'b': 1}, lambda value, key: value is not None) # Returns {'b': 1}
objPickBy({'a': 1}, lambda value, key: False) # Returns {}