Comunidad de diseño web y desarrollo en internet online

consulta sobre propiedades en object

Citar            
MensajeEscrito el 31 Ago 2013 02:04 am
Hola a todos, les escribo por una duda que tengo respecto a la visualización de las propiedades de los objetos. Al crear una nueva variable del tipo objeto y le asigno propiedades...

public var _elobjeto:Object = {prop1:"NORMAL", prop2:0.5};

Al tipear el nombre de la variable seguida de un punto (".") no me deberían aparecer una lista de propiedades como cuando defino que una variable es (por ejemplo) un movieClip y al poner un punto me aparecen NAME, X, Y, XSCALE, etc?

Consulto esto para ahorrar tiempo en caso de que tenga varias propiedades y no siempre me acuerdo como escribi las propiedades y no perder tiempo volviendo a buscar la definición del objeto.

Gracias por la ayuda.

Por pani79

1 de clabLevel



 

chrome
Citar            
MensajeEscrito el 02 Sep 2013 05:50 pm
Cuando creas dinámicamente un objeto en línea de tiempo, los tips no aparecen. Si quisieras tener tips, deberías escribir una clase con métodos y propiedades. Luego de importarla, la instancias y al escribir el nombre de instancia y punto, te aparecen los métodos declarados

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

chrome
Citar            
MensajeEscrito el 09 Sep 2013 12:18 am
Ante todo muchas gracias por la respuesta Jorge.

El tema es este... yo estoy programando un juego y estaba almacenando datos sobre el estado en distintas variables. Pensando en que todos estos valores eran referidos al estado de un elemento los puse primero en variables, después en arrays y ahora pensaba ponerlos en object (crear un objeto con propiedades).
Pensaba que estos objetos, heredados en las clases que se extienden de una principal (objeto - objeto visual - elemento - personaje - jugador) podían mostrar sus propiedades cuando son heredados como tips... pero evidentemente me equivoque.

Creo que lo mejor sera que de momento siga usando arrays almacenando en determinado espacio especifico x propiedad.

La respuesta es algo que había considerado pero de momento sigo con esta ya que de una manera u otra me veo obligado a usar matrices de memoria con estos datos.

De nuevo, muchas gracias Jorge.

Por pani79

1 de clabLevel



 

chrome
Citar            
MensajeEscrito el 09 Sep 2013 06:11 am
BuenAS:

Lo que te dice Jorge no es nada complejo; es simplemente que utilices la instancia de una clase que crees en lugar de un objeto genérico.

Código ActionScript :

package
{
   public class GameSetupVO
   {
      public var prop1:String;
      public var prop2:Number;
      
      public function GameSetupVO(prop1:String = "", prop2:Number = 0)
      {
         this.prop1 = prop1;
         this.prop2 = prop2;
      }
   }
}

Veras que acabo el nombre con VO (iniciales de Value Object, objeto valor), que no es necesario pero se utiliza generalmente para indicar que esta clase es un value object.

Y para utilizarla tendrías que hacer:

var valores:GameSetupVO = new GameSetupVO("Hola", 100);

De esta forma puedes hacer tificación de dato, con lo que te aseguras de que no escribes mal las propiedades. Por ejemplo, si hicieras:

trace(valores.prop3);

como prop3 no es una propiedad de la clase, el compilador te lo indicará y podrás arreglarlo, cosa que no ocurre cuando trabajas con objetos genéricos.

Un saludo.

Por Lukánicos

Claber

468 de clabLevel



Genero:Masculino  

chrome

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.