Con el desarrollo de los tiempos, han aparecido cada vez más marcos excelentes en el campo de JavaScript, lo que simplifica enormemente nuestro trabajo de desarrollo. Cuando usamos estos marcos, ¿deberíamos pensar también en sus orígenes y en cómo se construyen? Si no está satisfecho con solo usar algunas API listas para usar, pero tiene un conocimiento profundo de sus mecanismos de implementación internos (según alguien, las API son las que se deprecian más rápido), la mejor manera es leer su código fuente. que puedas leerlo.
He estudiado el código fuente de jQuery en los últimos dos días y aquí compartiré algunos de mis conocimientos superficiales. Corríjame si soy inapropiado. Bien, echemos un vistazo a cómo funciona jQuery. Supongo que ya tiene algunos conocimientos básicos de JavaScript. Si los conceptos básicos no son suficientes, le recomiendo que lea los dos libros "Programación avanzada de JavaScript" y "Comprensión de JavaScript". Este artículo no es adecuado para amigos que no comprenden conceptos como clases, objetos, funciones, prototipos, etc. en js.
Empecemos desde el principio:
Primero construya un objeto para el usuario, asumiendo que nuestro marco se llama Shaka (mi nombre;))
var Shaka = function(){}; Aquí creamos una función vacía sin nada en ella. Esta función es en realidad nuestro constructor. Para que el objeto que generamos llame a los métodos definidos en el prototipo, necesitamos agregar algunos métodos a Shaka usando el prototipo (piense en Shaka como una clase), por lo que definimos:
Shaka.fn = Shaka.prototype = {};
Shaka.fn aquí es equivalente al alias de Shaka.prototype para uso futuro. Apuntan a la misma referencia.
Bien, agreguemos un método sayHello y agreguemos un parámetro a Shaka, para que la apariencia más básica de este marco ya esté ahí. Si está vivo, ahora tiene 1 año.
Ejecutar cuadro de código