Uno de los puntos de conflicto ideológicos del primer marco de JavaScript fue la extensión de prototipos frente a las funciones de envoltura. Frameworks como MooTools y Prototype ampliaron los prototipos mientras que jQuery y otros frameworks más pequeños no lo hicieron. Cada uno tenía sus beneficios, pero en última instancia, todos estos años después, sigo creyendo que la capacidad de extender prototipos nativos es una característica masiva de JavaScript. ¡Veamos lo fácil que es potenciar cada instancia de un primitivo extendiendo prototipos!
Todos los nativos de JavaScript, como Quantity
, String
, Array
, Object
and many others tiene un prototype
. Cada método en un prototype
es heredado por cada instancia de ese objeto. Por ejemplo, podemos proporcionar cada `Array
instancia con un distinctive
método mediante la ampliación de su prototipo:
Array.prototype.distinctive = operate() { return (...new Set(this)); } ('1', '1', '2').distinctive(); // ('1', '2') new Array('1', '1', '2').distinctive(); // ('1', '2')
Tenga en cuenta que si también puede garantizar la capacidad de encadenamiento devolviendo this
:
('1', '1', '2').distinctive().reverse(); // ('2', '1')
La mayor crítica a la extensión de prototipos siempre ha sido la colisión de nombres donde la eventual implementación de la especificación es diferente a la implementación del marco. Si bien entiendo ese argumento, puede combatirlo con nombres de funciones de prefijo. Agregar superpoderes a un prototipo nativo para que cada instancia los tenga es tan útil que nunca le diría a alguien que no extienda un prototipo. #MooToolsFTW.
Gradientes CSS
Con CSS border-radius, les mostré cómo CSS puede cerrar la brecha entre el diseño y el desarrollo al agregar esquinas redondeadas a los elementos. Los gradientes de CSS son otro paso en esa dirección. Ahora que los gradientes de CSS son compatibles con Web Explorer 8+, Firefox, Safari y Chrome…
Enviar mensajes de texto con PHP
Niños en estos días, te digo. Lo único que les importa es la tecnología. Los videojuegos. El agua embotellada. Ah, y los mensajes de texto, siempre los mensajes de texto. En mi época, todo lo que teníamos period… OK, yo también tenía todas estas cosas. Pero sigo sin entender…
Contenido editable usando MooTools 1.2, PHP y MySQL
Todo el mundo y su teacher de aeróbicos quieren poder editar su propio sitio net en estos días. ¿Y por qué no lo harían? Es decir, tienen un presupuesto de $500, no tienen experiencia en HTML/CSS y tienen expectativas extraordinarias. Sin embargo, basta de despotricar. Tener un sitio net que permita…
Complemento de tablas Zebra de MooTools
Los datos tabulares a menudo pueden ser aburridos, ¡pero no es necesario que se vean así! Con una clase pequeña de MooTools, puedo hacer que los datos tabulares sean extremadamente fáciles de leer mediante la implementación de tablas “zebra”, tablas con colores de fondo de fila alternados. El CSS El CSS anterior es extremadamente básico.