Avatar billede Lasse Novice
15. marts 2002 - 00:20 Der er 7 kommentarer og
1 løsning

hashes(associativt array)

man kan vha. arrays simulere hashes i javascript saaledes:

var t = new Array

t["fefe"] = 1
t["asdq"] = 2
t["zxcv"] = 3

Alt dette er meget fint.

Vil man nu iterere goer man saaledes:

for( var i in t) {
//her vil i vaere: 1. fefe, 2. asdq, 3. zxcv (maaske ikke lige i denne raekkefoelge)
}

finno finno...

MEN, hvis man nu skal slette en enkelt key-value opstaar problemerne. Er der nogen der ved hvordan man goer det? Det jeg soeger er dette:

t.splice('fefe',1)

Dette kan man ikke lige goere! Man kan derimod

t["fefe"] = undefined

Problemet er at naar man itererer over alle keys i hashen, saa vil key=fefe forekomme, men med value=undefined. Jeg vil helst have at keyen ogsaa forsvinder....

nogen bud?
Avatar billede jumper Nybegynder
15. marts 2002 - 00:22 #1
delete t["fefe"];

/Thor
Avatar billede jumper Nybegynder
15. marts 2002 - 00:23 #2
Avatar billede expo Nybegynder
15. marts 2002 - 00:35 #3
+d
Avatar billede Lasse Novice
15. marts 2002 - 00:42 #4
ok, nu er det saadan at jeg har det i 2 dimensioner:

Du er her : Eksperten : Programmering : JavaScript : hashes(associativt array) :



hashes(associativt array)    50 point fra gooky
man kan vha. arrays simulere hashes i javascript saaledes:

var t = new Array

t["fefe"]["bla"] = 1
t["asdq"]["bla"] = 2
t["zxcv"]["bla"] = 1
t["zxcv"]["bla2"] = 1

Jeg vil gerne vide hvor mange elementer der er i t["zxcv"] .... den har ingen length property... hvad goer jeg forkert
Avatar billede jakoba Nybegynder
15. marts 2002 - 11:31 #5
prøv med:

t = new Array();

t["fefe"]["bla"] = 1;
t["asdq"]["bla"] = 2;

t["zxcv"] = new Array();  // lav også anden dimension som array
t["zxcv"]["bla"] = 1;
t["zxcv"]["bla2"] = 1;

mvh JakobA
Avatar billede Lasse Novice
20. marts 2002 - 19:24 #6
jakoba... har du selv proevet det... jeg kan virkelig ikke faa det til at virke... ikke engang alert(t.length)

den siger '0'
Avatar billede jakoba Nybegynder
20. marts 2002 - 20:42 #7
Nej jeg havde ikke testet det. Og der skulle ikke meget test til at afsløre at det var et galt svar.
brug evt en optælling som i visLengde() her:
http://www.jakoba.dk/eksperten/exp185297.html

sorry
Avatar billede Lasse Novice
20. marts 2002 - 23:51 #8
naah, der er svaret og pointene er fordelt... takker
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester