• Get values at path specified as array

    Type Parameters

    • T extends Record<string, any>

    Parameters

    • obj: T
    • keysToFind: string[]
    • path: string | PathArray

      ex. 'invoice.invoice_lines'

    Returns any[]

    {Array}

    Example

    getArrayOfValuesFromObject({id: 1, name: 'abc'}, ['id']);
    // return [{ id: 1 }]

    getArrayOfValuesFromObject({child: {id: 2}}, ['id'], 'child');
    // return [{ id: 2 }]

    getArrayOfValuesFromObject({child: {id: 2}}, ['id'], 'child');
    // return [{ id: 2 }]

    getArrayOfValuesFromObject(
    {
    child: {
    id: 1,
    grandChild: [
    {id: 2},
    {id: 3}
    ]
    }
    },
    ['id'],
    'child.grandChild'
    );
    // return [{ id: 2 }, { id: 3 }]

    getArrayOfValuesFromObject(
    {
    arrayChild: [
    {
    arrayGrandChild: [
    {
    arrayGrandGrandChild:[
    {id: 10, name: 'GrandGrandChildA'},
    {id: 11, name: 'GrandGrandChildB'}
    ]
    }
    ],
    },
    {
    arrayGrandChild: [
    {
    arrayGrandGrandChild:[
    {id: 10, name: 'GrandGrandChildC'},
    {id: 12, name: 'GrandGrandChildA'}
    ]
    },
    {
    arrayGrandGrandChild:[
    {id: 14}
    ]
    }
    ],
    },
    ],
    },
    ['id'],
    'arrayChild.arrayGrandChild.arrayGrandGrandChild'
    );
    // return [{ id: 10 }, { id: 11 }, { id: 10 }, { id: 12 }, { id: 14 }]

Generated using TypeDoc