Ir al contenido principal

Extender funcionalidades en jQuery

Hoy he descubierto que cuando queremos extender funcionalidades en jQuery lo primero que hariamos es:
Object.prototype.miFuncion = function { return "Hola mundo"; };
var mivar = new Object();
alert(mivar.miFuncion());
El problema de esto es que hace que jQuery reviente por las cuatro esquinas y todo empiece a fallar y tu a tirarte de los pelos. La solucion es bien sencilla, usaremos $.extend para ello.
$.extend({miFuncion: function () { return "Hola mundo"; }});
alert($.miFuncion());
O también de esta otra forma:
$.fn.extend({miFuncion: function () { return "Hola mundo"; }});
alert($('#miselector').miFuncion());
Pues eso niños, prohibido tocar el prototype de cualquier objeto de javascript que no hayais creado vosotros. Porque sino sufrireis las consecuencias XDDD.

Comentarios

Entradas populares de este blog

Formatear fecha JSON

Para poder representar de forma bonita y humana una fecha retornada por un JSON por ejemplo, la función quedaría tal que así. En mi caso, el formato esperado es: dd/MM/yyyy hh:mm

function FormatDate(fecha) { var fechaObj = new Date(fecha); return (fechaObj.getDate() < 10 ? '0' : '') + fechaObj.getDate() + '/' + (fechaObj.getMonth() < 10 ? '0' : '') + fechaObj.getMonth() + '/' + fechaObj.getYear() + ' ' + (fechaObj.getHours() < 10 ? '0' : '') + fechaObj.getHours() + ':' + (fechaObj.getMinutes() < 10 ? '0' : '') + fechaObj.getMinutes(); };

Generar números aleatorios con Postgres

Muchas veces nos encontraremos con que tenemos que poblar una BD con numeros para poder testear un funcionalidad que estemos programando. En postgres es tan sencillo como:

update schema.tabla set columnaNumerica = floor(random() * N) + desviacion;
Con desviación me refiero a que, si no lo añadimos, random generara numeros empezando por el 0 hasta N. El uso de floor es para redondear y quedarme solo con la parte entera. Ya que random genera floats entre 0 y 1.

Espero os sirva este pequeño truquillo. Un saludico.