Toon posts:

[JS] Variabele Variabele

Pagina: 1
Acties:

Verwijderd

Topicstarter
Hoi tweakers,

Is het met javascript mogelijk om de naam van een variabele variabel te maken? in PHP werkt dit wel:
code:
1
${$naam} = "blaat";


maar in javascript kan ik het nergens vinden.

  • Pelle
  • Registratie: Januari 2001
  • Laatst online: 09:36

Pelle

🚴‍♂️

Waarom zou je dat willen? Werk liever met array's.

  • André
  • Registratie: Maart 2002
  • Laatst online: 01-09 14:07

André

Analytics dude

variabele = eval(variabelenaam);

  • Spider.007
  • Registratie: December 2000
  • Niet online

Spider.007

* Tetragrammaton

document["varnaam"+129] = "de var heet nu varnaam129, maar kan uiteraardt alles zijn";

---
Prozium - The great nepenthe. Opiate of our masses. Glue of our great society. Salve and salvation, it has delivered us from pathos, from sorrow, the deepest chasms of melancholy and hate


  • Pelle
  • Registratie: Januari 2001
  • Laatst online: 09:36

Pelle

🚴‍♂️

Yogho schreef op 23 augustus 2002 @ 15:03:
variabele = eval(variabelenaam);


Hij bedoelt het omgekeerde. En dat is voor zover ik weet niet mogelijk.
In PHP kun je namelijk dit doen:

PHP:
1
2
3
$sjaak = "hoi";
${$sjaak} = "blaat";
print($hoi); //resultaat: blaat


Maar dat kan dus niet in JS.

  • AxiMaxi
  • Registratie: December 2000
  • Laatst online: 27-05 15:33
Hmm, interessant probleem.
Het duurde ff voordat ik snapte wat je bedoelde, maar okay...

Anyway, misschien dat je het anders op kan lossen.

var floep[naam] = "blaat"

of

var floep.naam = "blaat"

Dit is even theorie, hoor.
Geen idee of het werkt, maar het gaat even om het principe :)
M.a.w. niet de variabele is variabel, maar de attribute... ofzo, denk ik... misschien. :?

edit:

Tering, toen ik begon met typen was ik de eerste reply. Bij het posten waren er al... 8 ofzo? :o

[ Voor 0% gewijzigd door AxiMaxi op 23-08-2002 15:10 . Reden: commentaar ]

[Hier had mijn handtekening kunnen staan]


  • Mercarra
  • Registratie: Juni 2001
  • Laatst online: 01-09 20:35
Nog even een js vraagje. Misschien dat iemand het weet. Als ik achter een document.write wat html zet, mogen er geen spaces in staan. Dan werkt het gewoon niet als ik dat js bestand aanroep in een html file. Dit is op te lossen door alles in 1 stuk te typen, of "+" tussen de zinnen te zetten.

Is er ook een andere manier om dit op te lossen?

(beetje offtopic, maar een nieuw topic niet waard)

Canon EOS 6D / Samyang 14mm f/2.8 / 17-40mm f/4.0 / 35mm f/1.4 / 50mm f/1.4 / 85mm f/1.8 / 70-200mm f/4 IS mercarra.nl


  • Spider.007
  • Registratie: December 2000
  • Niet online

Spider.007

* Tetragrammaton

Pelle schreef op 23 augustus 2002 @ 15:06:

[...]


Hij bedoelt het omgekeerde. En dat is voor zover ik weet niet mogelijk.
In PHP kun je namelijk dit doen:

PHP:
1
2
3
$sjaak = "hoi";
${$sjaak} = "blaat";
print($hoi); //resultaat: blaat


Maar dat kan dus niet in JS.
dat wordt dus
code:
1
2
3
var sjaak = "Hoi";
window[sjaak] = "blaat";
alert(hoi); // resultaat: blaat


hmm, ff getest; bovenstaande werkt niet;

maar dit werkt wel:

[code]
window["sjaak"] = "blaat";
alert(sjaak); // resultaat: blaat
[/code[

heb je daar wat aan?

---
Prozium - The great nepenthe. Opiate of our masses. Glue of our great society. Salve and salvation, it has delivered us from pathos, from sorrow, the deepest chasms of melancholy and hate


  • Spider.007
  • Registratie: December 2000
  • Niet online

Spider.007

* Tetragrammaton

mercarra schreef op 23 augustus 2002 @ 15:17:
Nog even een js vraagje. Misschien dat iemand het weet. Als ik achter een document.write wat html zet, mogen er geen spaces in staan. Dan werkt het gewoon niet als ik dat js bestand aanroep in een html file. Dit is op te lossen door alles in 1 stuk te typen, of "+" tussen de zinnen te zetten.

Is er ook een andere manier om dit op te lossen?

(beetje offtopic, maar een nieuw topic niet waard)
als je
code:
1
2
3
4
<script>
document.write("blaat blaat");
</script>
<a href="blaat">blaat</a>

doet werkt dat niet? Zet anders een voorbeeldje neer?

---
Prozium - The great nepenthe. Opiate of our masses. Glue of our great society. Salve and salvation, it has delivered us from pathos, from sorrow, the deepest chasms of melancholy and hate


Verwijderd

Topicstarter
Super! tnx guys, ik kan weer verder

ps, onhoudt dit goed want ik heb me er echt kapot naar gezocht :)

  • RM-rf
  • Registratie: September 2000
  • Laatst online: 09:55

RM-rf

1 2 3 4 5 7 6 8 9

hmm, ff getest; bovenstaande werkt niet;
alert(Hoi) wrkt dan wel, javascript is case-sensitive, php zal het wel niet zijn, maar ach dat is ook zo ongeveer de internet explorer onder de scripting talen, iedere idioot gebruikt het ;)
mercarra schreef op 23 augustus 2002 @ 15:17:
Nog even een js vraagje. Misschien dat iemand het weet. Als ik achter een document.write wat html zet, mogen er geen spaces in staan. Dan werkt het gewoon niet als ik dat js bestand aanroep in een html file. Dit is op te lossen door alles in 1 stuk te typen, of "+" tussen de zinnen te zetten.

Is er ook een andere manier om dit op te lossen?
bedoel je niet newlines, spaties mogen best in een variabele staan, enkel newlines ziet javascript als EOL,

de oplossing kan zijn om een \-backslash aan het end van de regel te zetten direct voor de newline, dan escape je de newline als het ware:
code:
1
2
document.write("dit is een stukje tekst dat \
verder gaat op de volgende regel");

Intelligente mensen zoeken in tijden van crisis naar oplossingen, Idioten zoeken dan schuldigen


  • Mercarra
  • Registratie: Juni 2001
  • Laatst online: 01-09 20:35
de oplossing kan zijn om een \-backslash aan het end van de regel te zetten direct voor de newline, dan escape je de newline als het ware:
Ik ga meteen ff kijken of het werkt!

Canon EOS 6D / Samyang 14mm f/2.8 / 17-40mm f/4.0 / 35mm f/1.4 / 50mm f/1.4 / 85mm f/1.8 / 70-200mm f/4 IS mercarra.nl


  • Spider.007
  • Registratie: December 2000
  • Niet online

Spider.007

* Tetragrammaton

RM-rf schreef op 23 augustus 2002 @ 15:23:
[...]

alert(Hoi) wrkt dan wel, javascript is case-sensitive, php zal het wel niet zijn, maar ach dat is ook zo ongeveer de internet explorer onder de scripting talen, iedere idioot gebruikt het ;)
w00t, bedankt, ik dacht al, ik heb het werkend gehad; normaal heb ik nooit problemen met case-sensetive JavaScript variabelen (zeker niet in IE) maar dit is een special case ;)

---
Prozium - The great nepenthe. Opiate of our masses. Glue of our great society. Salve and salvation, it has delivered us from pathos, from sorrow, the deepest chasms of melancholy and hate


Verwijderd

Topicstarter
Pelle schreef op 23 augustus 2002 @ 15:02:
Waarom zou je dat willen? Werk liever met array's.
Ja, ik ook, maar hier gaat het om een ingewikkelde content manager (loop) constructie

  • 2
  • Registratie: November 2000
  • Laatst online: 31-03 13:52

2

Verwijderd schreef op 23 augustus 2002 @ 16:40:
[...]


Ja, ik ook, maar hier gaat het om een ingewikkelde content manager (loop) constructie
Ik kan me haast niet voorstellen dat je niet met arrays of objecten kan werken. Kun je een beetje verder uitleggen waar het precies om gaat? Ik ben wel benieuwd namelijk.

  • Pelle
  • Registratie: Januari 2001
  • Laatst online: 09:36

Pelle

🚴‍♂️

Verwijderd schreef op 23 augustus 2002 @ 16:40:
Ja, ik ook, maar hier gaat het om een ingewikkelde content manager (loop) constructie


Met array's kun je alles wat je met gewone variabelen kunt, en meer.

Verwijderd

Topicstarter
Pelle schreef op 23 augustus 2002 @ 17:15:

[...]


Met array's kun je alles wat je met gewone variabelen kunt, en meer.
Klopt, maar mijn CMS maakt gebruik van template layouts waarbij ik een menu gebuik (verticaal) dat van de boomconstructie uit de CMS een menu creeert. Werkt goed maar echter is het lastig om in de CMS aan te geven hoe een array moet heten (een array staat gelijk aan een 'submenuutje' van het menu) want ze moeten genummerd worden. Nu kan ik wel heel het script open gaan halen en het helemaal in gaan weven in de CMS, maar ik dacht dat het zo makkelijker zou gaan.

  • 2
  • Registratie: November 2000
  • Laatst online: 31-03 13:52

2

Kun je dit niet gewoon met 2 of 3 dimensionale arrays doen?
Pagina: 1