Я создал приложение JavaScript, в котором есть множество манипуляций с массивами (сортировка, фильтрация и т. Д.).
В настоящее время мои функции выглядят следующим образом:
function (myArray, arg1, arg2,...)
где myArray - это массив, над которым я работаю, а arg1, arg2, ... - аргументы, используемые функцией для изменения массива.
Я думаю, что было бы лучше иметь четкое разделение между объектом и аргументами (как jQuery):
myArray.function(arg1, arg2,...)
Я знаю, что могу использовать Array.prototype, чтобы добавить свою функцию ко всем массивам, но это кажется слишком тяжелым, поскольку добавляемые мной функции действительно специфичны для моего случая и вообще не имеют смысла для массивов. Я также знаю, что могу создать объект, но тогда мне не будут полезны методы массива, доступные в JavaScript (indexOf, filter и т. Д.).
Есть ли способ создать собственный объект массива, который унаследовал бы методы массива по умолчанию и позволил бы мне добавить свои собственные?