2011-08-08 14 views
8

¿Cómo se agrega una cadena variable en esta declaración javascript? donde nombre puede corresponder a cualquier cadena válida, dicen WebkitTransform o Moztransform, etcvariable en la declaración javascript

document.getElementById('test').style.VARIABLE_NAME = 'rotate(15deg)'; 

Mi código no parece funcionar cuando me puse la VARIABLE_NAME a WebkitTransform, pero funciona bien si uso WebkitTransform directamente, como se in sin nombrarlo a través de una variable. Gracias de antemano :)

Respuesta

19

Existen dos formas de acceder a los miembros de un objeto Javascript.

Dot notation, que utiliza un identificador para acceder al miembro de:

obj.member; 

Bracket notation, que utiliza una cadena para acceder al miembro de:

obj['member'] 

Este último utiliza una cadena para localizar el miembro y puedes usar cualquier expresión con la misma facilidad. El valor de la expresión se convierte en una cadena por lo que estos son equivalentes:

obj[{}] 
obj['[object Object]'] 

Si su expresión ya es una cadena de caracteres que se puede utilizar tal cual, y en su caso la variable contiene una cadena por lo que sólo puede do:

document.getElementById('test').style[VARIABLE_NAME] = 'rotate(15deg)'; 
+3

En general, foo.bar es azúcar sintáctica para foo ['bar']. –

+0

Muchas gracias, funciona bien ahora: D – Neha

+0

@Neha De nada, me alegra que te haya ayudado. – Paulpro

3

Hay 2 formas de acceder a valores en objetos javascript. El primero es mediante el uso del operador punto (por ejemplo, object.memberName). El segundo es mediante la notación de corchetes (por ejemplo, object ['memberName']).

+0

memberName necesita ir entre comillas con el segundo ejemplo. –

+0

Tienes razón. Gracias por señalar eso. – Hyangelo

Cuestiones relacionadas