* @memberOf module:zrender/core/util * @param {Array} obj * @param {Function} cb * @param {Object} [memo] * @param {*} [context] * @return {Array}
(obj, cb, memo, context)
| 583 | * @return {Array} |
| 584 | */ |
| 585 | function reduce(obj, cb, memo, context) { |
| 586 | if (!(obj && cb)) { |
| 587 | return; |
| 588 | } |
| 589 | if (obj.reduce && obj.reduce === nativeReduce) { |
| 590 | return obj.reduce(cb, memo, context); |
| 591 | } |
| 592 | else { |
| 593 | for (var i = 0, len = obj.length; i < len; i++) { |
| 594 | memo = cb.call(context, memo, obj[i], i, obj); |
| 595 | } |
| 596 | return memo; |
| 597 | } |
| 598 | } |
| 599 | |
| 600 | /** |
| 601 | * 数组过滤 |
no outgoing calls
no test coverage detected