
{{alias}}( obj, fcn[, thisArg] )
    Invokes a function for each own enumerable property of an object.

    When invoked, the function is provided three arguments:

    - `value`: object property value
    - `key`: object property
    - `obj`: the input object

    To terminate iteration before visiting all properties, the provided function
    must explicitly return `false`.

    The function determines the list of own enumerable properties *before*
    invoking the provided function. Hence, any modifications made to the input
    object *after* calling this function (such as adding and removing
    properties) will *not* affect the list of visited properties.

    Property iteration order is *not* guaranteed.

    Parameters
    ----------
    obj: Object
        Input object, including arrays, typed arrays, and other collections.

    fcn: Function
        The function to invoke for each own enumerable property.

    thisArg: any (optional)
        Execution context.

    Returns
    -------
    out: Object
        Input object.

    Examples
    --------
    > function logger( v, k ) { console.log( '%s: %d', k, v ); };
    > var obj = { 'a': 1, 'b': 2, 'c': 3, 'd': 4 };
    > {{alias}}( obj, logger )
    a: 1
    b: 2
    c: 3
    d: 4

    See Also
    --------

