Foros del Web » Programando para Internet » Javascript »

Crear "this"

Estas en el tema de Crear "this" en el foro de Javascript en Foros del Web. Hola a todos, Estoy intentando crear el objeto this, pero no puedo. Me saltan errores. Lo quiero hacer en estas lineas(estan resumidas): @import url("http://static.forosdelweb.com/clientscript/vbulletin_css/geshi.css"); Código ...
  #1 (permalink)  
Antiguo 17/05/2012, 13:02
Avatar de salbatore  
Fecha de Ingreso: abril-2007
Ubicación: Springfield
Mensajes: 1.567
Antigüedad: 17 años, 9 meses
Puntos: 19
Crear "this"

Hola a todos,

Estoy intentando crear el objeto this, pero no puedo. Me saltan errores.

Lo quiero hacer en estas lineas(estan resumidas):

Código Javascript:
Ver original
  1. variable="alert(this.className)";
  2. (function(){eval(variable); }).call(miobjeto);


Quiero que miobjeto se convierta en el this, pero no funciona. ¿Como debo hacerlo?
  #2 (permalink)  
Antiguo 17/05/2012, 14:38
Avatar de Aijoona
Colaborador
 
Fecha de Ingreso: mayo-2011
Ubicación: Buenos Aires
Mensajes: 779
Antigüedad: 13 años, 8 meses
Puntos: 343
Respuesta: Crear "this"

1. No uses eval.
2.
Código Javascript:
Ver original
  1. var expose = function(prop) {
  2.     return this[prop] || 'invalid!';
  3. };
  4.  
  5. var myObject = {
  6.     a: 1,
  7.     b: 2,
  8.     c: 3
  9. };
  10.  
  11. expose.call(myObject, 'a'); // 1
  12. expose.call(myObject, 'b'); // 2
  13. expose.call(myObject, 'c'); // 3
  14. expose.call(myObject, 'd'); // "invalid!"
__________________
blog | @aijoona
  #3 (permalink)  
Antiguo 18/05/2012, 08:46
Avatar de salbatore  
Fecha de Ingreso: abril-2007
Ubicación: Springfield
Mensajes: 1.567
Antigüedad: 17 años, 9 meses
Puntos: 19
Respuesta: Crear "this"

Hola de nuevo,

El problema es que necesito usar eval Aijoona. Es un gran problema al que tengo que ceñirme.

¿Seria posible hacerlo con el eval como el que he puesto?
  #4 (permalink)  
Antiguo 18/05/2012, 09:16
Avatar de Panino5001
Me alejo de Omelas
 
Fecha de Ingreso: mayo-2004
Ubicación: -34.637167,-58.462984
Mensajes: 5.148
Antigüedad: 20 años, 7 meses
Puntos: 834
Respuesta: Crear "this"

A mi me funciona tu ejemplo:
Código PHP:
<script type="text/javascript">
var 
miobjeto={className:'iupi'}
variable="alert(this.className)";
(function(){eval(
variable); }).call(miobjeto);
</script> 
  #5 (permalink)  
Antiguo 18/05/2012, 09:16
Avatar de Aijoona
Colaborador
 
Fecha de Ingreso: mayo-2011
Ubicación: Buenos Aires
Mensajes: 779
Antigüedad: 13 años, 8 meses
Puntos: 343
Respuesta: Crear "this"

Por qué necesitarías usar eval?
__________________
blog | @aijoona
  #6 (permalink)  
Antiguo 19/05/2012, 08:22
Avatar de salbatore  
Fecha de Ingreso: abril-2007
Ubicación: Springfield
Mensajes: 1.567
Antigüedad: 17 años, 9 meses
Puntos: 19
Respuesta: Crear "this"

Hola a todos,

Voy a investigar un poco. He probado un ejemplo simplista y me funciona. No se que razon puede provocar mi error.

Bufff...

Necesito usar eval por que tengo muchas ordenes dentro de un array. Es un modo cutre, pero que me ahorra mucho curro. Supongo que hay mejores maneras.

:P

Voy a darle duro hoy y os cuento. Jo!... gracias.
  #7 (permalink)  
Antiguo 20/05/2012, 05:04
Avatar de Aijoona
Colaborador
 
Fecha de Ingreso: mayo-2011
Ubicación: Buenos Aires
Mensajes: 779
Antigüedad: 13 años, 8 meses
Puntos: 343
Respuesta: Crear "this"

Si usas eval probablemente lo estés haciendo mal. Pocos casos justifican su uso.
__________________
blog | @aijoona

Etiquetas: funcion
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 19:28.