Ver Mensaje Individual
  #1 (permalink)  
Antiguo 03/02/2010, 14:45
Avatar de David
David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
¿Por qué no usar function() para generar objetos?

Hola.

Esta es una curiosidad que me inquieta desde una conversación que tuvimos hace un tiempo sobre usar eval o no:
http://www.forosdelweb.com/f13/eval-...5/#post2841388
Cita:
Iniciado por venkman Ver Mensaje
Ahora yo pregunto... ¿cuántos huyen del uso de eval pero siguen usando el constructor Function y pasando cadenas a setTimeout/setInterval?
En ese momento supuse que se trataba de una cuestión de rendimiento (por el contexto en que se estaba hablando), investigué al respecto pero no encontré nada preciso.

Entiendo que si se usa mal una función generadora para crear objetos estaremos usando memoria innecesaria asignando una y otra vez los métodos al nuevo objeto creado. Pero, no necesitamos hacerlo, de hecho el paradigma de orientación a objetos de Javascript es basado en prototipos. Y justamente en ese caso basta con asignar los métodos al prototipo para evitar el problema mencionado anteriormente.

También, en cierto momento se conversó de las diferencias entre reutilizar un objeto creado con una función generadora y uno creado usando Object Literal Notation:
http://www.forosdelweb.com/f13/dos-puntos-631144/

En fin, resumiendo, ¿por qué entonces no es recomendable usar function() para generar objetos?

Saludos.
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.