Skip to content

filterFields

Input an object obj and an iterator iterator, iterate over each field of the object, execute iterator for each field's value, remove the field if the return value == false, and return a new plain object or array.

Added in v0.0.1

Usage

ts
import { filterFields } from 'parsnip-kit'

const obj = { a: 1, b: 2, c: 3 }
const iterator0 = (value: number) => value > 1
const result0 = filterFields(obj, iterator0)
// { b: 2, c: 3 }

const arr0 = [0, 1, 2, 3]
const iterator1 = (value: number) => value % 2 === 0
const result1 = filterFields(arr0, iterator1)
// [0, 2]

const arr1 = [0, 1, 2, 3]
arr1['test'] = 'test'
const iterator2 = (value, key) => typeof key === 'string'
const result2 = filterFields(arr1, iterator2)
// [test: 'test']

API

Type Parameter

ArgTypeDescription
Textends objectType of object to iterate

Arguments

ArgTypeOptionalDefaultDescription
objTfalseundefinedObject to iterate
iterator(value: any, key: string, object: T) => booleanfalseundefinedIterator function

Returns

Type
object