//bow.js  var bow = bow || {}; (function () { bow.tablas = bow.tablas || {}; bow.fechas = bow.fechas || {}; /** * Método encargado de paginar los registros de una tabla * * @param datos. Arreglo con los datos a paginar * @param limite. Cantidad de filas por página * @param inicial. Posición inicial del cursor de paginación (página inicial a mostrar) * @return Objeto para utilizar en las etiquetas y */ bow.tablas.paginar = function (datos, limite) { var paginacion = { totalFilas: datos.length, filasPorPagina: limite, paginaInicial: 1, paginaActual: 1, filasMostrar: datos, pageChanged: function () { var inicio = ((this.paginaActual - 1) * this.filasPorPagina); var fin = inicio + this.filasPorPagina; this.filasMostrar = datos.slice(inicio, fin); return this.filasMostrar; } }; paginacion.pageChanged(); return paginacion; }; })(); //usage zonificacionService.getPaises().success(function (data) { vm.paises = bow.tablas.paginar(data.paises, 10); });