(require("@nginstack/engine/lib/object/reduce"))(obj, func, val [, opt_obj])
Passa cada elemento do mapa para uma função e acumula o resultado.
Parameters:
| Name | Type | Argument | Description |
|---|---|---|---|
obj |
Object | O mapa que será iterado. |
|
func |
function | A função que será executada para cada elemento. Esta função irá receber 4 argumentos: o valor anterior ou o inicial, o elemento do mapa, a chave do mapa e o mapa. Exemplo: function (previousValue, value, key, obj). |
|
val |
Object | O valor inicial passado para a função f na primeira iteração. |
|
opt_obj |
Object |
<optional> |
O objeto que será utilizado como o valor de 'this' dentro de f. |
Returns:
Resultado de avaliar f repetidamente para todos os elementos do array.
- Type
- *
Example
var reduce = require('@nginstack/engine/lib/object/reduce');
// O código abaixo
var obj = {
nome: 'José',
idade: 31
};
var valores = [];
var p;
for (var p in obj) {
valores.push(obj[p]);
}
// Pode ser simplificado para:
var obj = {
nome: 'José',
idade: 31
};
var resultado = reduce(obj, function (r, v) {
r.push(v);
return r;
}, []);