What are the pros and cons of each?
For example: my_func(a, b, c, d, e) vs my_func(params).
Generally, I like the former because intellisense can detect it for people that use IDE’s. Whereas using the second method requires the developer to lookup documentation. However, I’ve noticed that Facebook’s JS SDK heavily uses the latter.
One clear advantage to accepting an Array of arguments is that you are free to add (or remove!) new arguments without impacting existing implementations as the method signature will not change.
Another possible reason for choosing to pass an arguments Array is so you can mimic named parameters which can make methods more flexible and avoid having to have a method signature that accepts a large number of arguments.