Desarrollado por | Prototipo del equipo central |
---|---|
Primera versión | Febrero de 2005 |
Última versión | 1.7.3 (22 de septiembre de 2015) |
Depositar | github.com/sstephenson/prototype |
Estado del proyecto | Activo |
Escrito en | Javascript |
Tipo | Marco de referencia |
Licencia | Licencia MIT |
Sitio web | http://prototypejs.org |
Prototype es un marco de JavaScript creado por Sam Stephenson enFebrero de 2005como uno de los componentes básicos del soporte de Ajax para Ruby on Rails .
Prototype se distribuye por sí solo, pero puede ser parte de proyectos más grandes como Ruby on Rails, script.aculo.us y Rico . El 2,7% de los sitios web utiliza prototype, lo que la convierte en una de las bibliotecas de JavaScript más populares .
Prototype proporciona varias funciones para el desarrollo de aplicaciones. El alcance de la funcionalidad abarca desde accesos directos hasta funciones que utilizan XMLHttpRequest (Ajax).
También proporciona funciones para manejar la programación de objetos, que el JavaScript clásico no puede. En JavaScript nativo, la creación de la función tiene una propiedad de prototipo . El marco prototipo no debe confundirse con este elemento.
La función dólar $ se utiliza como un atajo al método DOM getElementById , lo que permite acceder a todos los elementos.
Ejemplo de uso:
Reducción del código después de usar la función:
$("id_of_element").setStyle({color: "#ffffff"}); La funcion $FDepende de la función $. Devuelve el valor del elemento de formulario solicitado. Para una entrada text, la función devuelve los datos contenidos en el elemento. Para un elemento de entrada select, la función devuelve el valor seleccionado actualmente.
$F("id_of_input_element") Objeto AjaxDos métodos: Ajax.Request(devuelve la salida XML sin procesar de una llamada AJAX) e Ajax.Updater(inyecta la devolución dentro de un objeto DOM especificado)
Ejemplo de uso: A Ajax.Requestcontinuación, se encuentran los valores actuales de los dos elementos de entrada del formulario HTML, emite una solicitud HTTP POST al servidor con los valores del elemento y ejecuta una función personalizada (llamada a showResponsecontinuación), cuando el servidor recibe la respuesta HTTP:
La biblioteca proporciona los elementos para la programación orientada a objetos. El método Class.createse utiliza para crear una nueva clase. Luego, a una clase se le asigna un prototipo que actúa como plantilla para las instancias de la clase.
var FirstClass = Class.create( { // La méthode initialize sert de [[Syntaxe_JavaScript#Constructeur|constructeur]] initialize: function () { this.data = "Bonjour"; } });Ampliación de otra clase:
Ajax.Request = Class.create( Ajax.Base, { // Remplace la méthode d'initialisation initialize: function(url, options) { this.transport = Ajax.getTransport(); this.setOptions(options); this.request(url); }, // ... });La función Object.extend(dest, src)toma dos objetos como parámetros y copia las propiedades del segundo objeto (noción de herencia). El objeto combinado se devuelve como resultado de la función. Como en el ejemplo anterior, el primer parámetro generalmente crea el objeto base, mientras que el segundo es un objeto anónimo que se usa solo para establecer propiedades adicionales. La declaración completa de la subclase aparece entre paréntesis de la llamada a la función.