quieres decir que si tengo una variable dentro una funcion puedo acceder al valor de esa variable desde fuera la funcion, voy ha hacer unos experimentos aver
si pongo
Código :
var akt="en global";
function aaa(){akt="en funcion";};
function bbb(){alert(akt);};
<div id="boton" onmouseover="bbb();">
evidentemente me saca --> en global
en cambio si pongo
Código :
var akt="en global";
function aaa(){akt="en funcion";};
function bbb(){alert(akt);};
<div id="boton" onmouseover="aaa();bbb();">
pone --> en funcion
a ver que sucede si pongo this[]
Código :
var akt="en global";
function aaa(){akt="en funcion";};
function bbb(){alert(this['akt']);};//le pongo this aki
<div id="boton" onmouseover="aaa();bbb();">
pone tambien--> en funcion
Código :
var akt="en global";
function aaa(){akt="en funcion";};
function bbb(){alert(this['akt']);};//le pongo this aki
<div id="boton" onmouseover="aaa();alert(akt);">
saca-->en funcion
vamos a ver desde dos eventos diferentes
Código :
var akt="en global";
function aaa(){akt="en funcion";};
function bbb(){alert(this['akt']);};//le pongo this aki
<div id="boton" onmouseover="aaa();" onclick="bbb();">
saca -->en funcion
Código :
var akt="en global";
function aaa(){akt="en funcion";};
function bbb(){alert(this['akt']);};//le pongo this aki
<div id="boton" onmouseover="aaa();" onclick="alert(akt);">
saca -->en funcion
Código :
var akt="en global";
function aaa(){akt="en funcion";};
function bbb(){alert(this['akt']);};//le pongo this aki
<div id="boton" onmouseover="aaa();" onclick="alert(this['akt']);">
saca-->undefined //logicamente
en cambio si hago lo siguiente
Código :
var akt="en global";
function aaa(){this['akt']="en funcion";};
function bbb(){alert(this['akt']);};//le pongo this aki
<div id="boton" onmouseover="aaa();" onclick="alert(akt);">
logicamente saca-->en funcion
no veo que problema puede haber al utilizar this[ ]
veo mas como una ventaja que como un problema, simplemente tengo que utilizarlo fuera de las etiquetas donde logicamente me dara undefined
ademas si quiero crear mil variables es una ventaja
Código :
for(var i=0;i<1001;i++){
this['variable'+i]=i*14;
}