Ver Mensaje Individual
  #3 (permalink)  
Antiguo 10/09/2015, 12:50
Avatar de Alexis88
Alexis88
Philosopher
 
Fecha de Ingreso: noviembre-2011
Ubicación: Tacna, Perú
Mensajes: 5.552
Antigüedad: 13 años
Puntos: 977
Respuesta: ¿como hacer funciones dentro de otras?

Bienvenido a Foros del Web.

JavaScript se basa en prototipos, por lo que tienes que añadir dichos métodos al prototipo de la función constructora que estés utilizando. Tanto dicha función como los métodos que desees encadenar, deberán de devolver al objeto que representa a la función constructora a través de la palabra reservada this.

Un ejemplo:
Código Javascript:
Ver original
  1. function $(identificador){
  2.     if (!(this instanceof $)) return new $(identificador);
  3.     this.elem = document.querySelector(identificador);
  4.     return this;
  5. }
  6.  
  7. $.prototype = {
  8.     metodo1: function(parametros){ //Método encadenable
  9.         /* Instrucciones */
  10.         return this;
  11.     },
  12.  
  13.     metodo2: function(parametros){ //Método no encadenable
  14.         /* Instrucciones */
  15.     }
  16. };

Y así lo usarías:
Código Javascript:
Ver original
  1. $("identificador").metodo1().metodo2();

Algo para leer.

Saludos
__________________
«Juro por mi vida y mi amor por ella, que jamás viviré para el provecho de otro hombre, ni le pediré a otro hombre que viva para el mío».

Ayn Rand