[js] getVariableByName?

Pagina: 1
Acties:

Onderwerpen


  • Rekcor
  • Registratie: Februari 2005
  • Laatst online: 08-10-2025
Ik heb een vervelend probleem. Een PHP-pagina van mij genereert een globale variabele met een variabele naam.

Op pagina A heet de variable bijv. 'aap', op pagina B 'noot' en op pagina C 'mies'.


Nu wil ik in een Javascript-functie de bewuste variabele gebruiken. Nu weet deze functie wel de naam van die variabele:

myJsFile.js
JavaScript:
1
2
var aap = 'hoi';
var sVariabeleNaam = 'aap';


andereJsFile.js
JavaScript:
1
2
3
4
function myFuntion()
{
  alert(sVariabeleNaam);
}


JavaScript:
1
2
3
4
5
6
7
var aap = 1;
var sVariabeleNaam = 'aap';

function myFuntion()
{
  alert(sVariabeleNaam);
}


maar ik wil de variabele zelf hebben. Ik ben dus eigenlijk op zoek naar een functie getVariableByName:


JavaScript:
1
2
3
4
5
6
function myFuntion()
{
  var myVar = getVariableByName(sVariabeleNaam);

  alert(myVar); //alerts 'hoi'
}


Kan dit in Javascript?

  • MichielioZ
  • Registratie: Augustus 2001
  • Laatst online: 11-11-2025
Volgens mij bedoel je gewoon de "functie" [url href=http://www.w3schools.com/jsref/jsref_eval.asp]eval()[/url]

Maar waarom roep je niet gewoon "aap" aan in je functie ?

Iedereen wil terug naar de natuur, maar niemand wil lopend...


Verwijderd

Alle globale variabelen zijn member van het global object, in je browser is dat het window object. Het is dus heel simpel: window[sVariabeleNaam]

  • Rekcor
  • Registratie: Februari 2005
  • Laatst online: 08-10-2025
Thanks Cheatah, dat werkte!

@MichielioZ: de andere Javascript-file weet niet dat de variabele 'aap' heet ;)

[ Voor 5% gewijzigd door Rekcor op 16-02-2008 11:52 ]