Вот как это сделать с split
.
var input = "255,255,255,10,251,91,31,4,220,220,220,1";
var inputArray = input.split(",");
var outputArray = [];
for(let i = 0;i<inputArray.length;i++)
{
if(i%4 != 3)
{
outputArray.push(inputArray[i]);
}
}
var output = outputArray.join(",");
console.log(output);
То, что Вы делаете, будет работать, но Ваш код должен быть похожим на это:
module WillPaginate
module Finder
module ClassMethods
def paginate_by_sql(sql, options)
# your code here
end
end
end
end
, Другими словами, войдите в finder.rb, удалите все кроме заголовков модуля и метода, который Вы хотите переопределить, затем сохранить в файл в lib и включать в environment.rb. Вуаля, мгновенный патч обезьяны!
Более краткое решение:
WillPaginate::Finder::ClassMethods.module_eval do
def paginate_by_sql sql, options
# Your code here
end
end
Поместите код в файл инициализатора в config / initializers. Это правильное место для размещения кода, который должен запускаться при загрузке среды. Это также лучше организует ваш код, делая более понятным намерение каждого файла, поэтому ошибки будет легче отслеживать. Не загромождайте environment.rb!