1 | var slice = require('./slice');
|
2 |
|
3 | /**
|
4 | * Call `methodName` on each item of the array passing custom arguments if
|
5 | * needed.
|
6 | */
|
7 | function invoke(arr, methodName, var_args){
|
8 | if (arr == null) {
|
9 | return arr;
|
10 | }
|
11 |
|
12 | var args = slice(arguments, 2);
|
13 | var i = -1, len = arr.length, value;
|
14 | while (++i < len) {
|
15 | value = arr[i];
|
16 | value[methodName].apply(value, args);
|
17 | }
|
18 |
|
19 | return arr;
|
20 | }
|
21 |
|
22 | module.exports = invoke;
|
23 |
|