Object länge ermitteln, aber wie?
Alex
- javascript
Hallo, habe da ein kleines Problem:
Habe ein Object:
var cards=new Object();
cards[0]=new Array("Visa", "4", "13,16");
cards[1]=new Array("Mastercard", "51,52,53,54,55", "16");
cards[2]=new Array("DiscoverCard", "6011", "16");
cards[3]=new Array("American Express", "34,37", "15");
Nun möchte ich gerne die Länge des Objectes (cards) ermittelt. Aber wie?
Mit "cards.length
" bekomme ich nur eine "undefined".
Sprich als Antwort müsste 4 rauskommen, dies ist für die Initialisierung einer for-schleife wichtig/notwendig damit alles dynamisch bleibt.
[latex]Mae govannen![/latex]
Habe ein Object:
var cards=new Object();
cards[0]=new Array("Visa", "4", "13,16");
cards[1]=new Array("Mastercard", "51,52,53,54,55", "16");
cards[2]=new Array("DiscoverCard", "6011", "16");
cards[3]=new Array("American Express", "34,37", "15");
>
> Nun möchte ich gerne die Länge des Objectes (cards) ermittelt. Aber wie?
Vor allem: Warum?
Du baust den "Inhalt" des Objekts wie ein Array auf, du kannst auch direkt ein Array statt Object benutzen, womit die Problematik sich erübrigt.
> Mit "`cards.length`{:.language-javascript}" bekomme ich nur eine "undefined".
Natürlich. Ein Object hat keine vorgegebene Eigenschaft length. Und fürs Durchlaufen benötigt man die "Länge" auch nicht, die for-in-Schelife läuft ohnehin durch alle
Cü,
[Kai](http://www.kaichen.in/selfhtml/)
--
Ash nazg durbatulûk, ash nazg gimbatul,ash nazg thrakatulûk, agh burzum-ishi krimpatul
selfcode sh:( fo:| ch:? rl:( br:< n4:# ie:{ mo:| va:) js:) de:> zu:) fl:( ss:| ls:?
[Mein Selfhtml-Kram](http://www.kaichen.in/selfhtml/)
Vor allem: Warum?
Du baust den "Inhalt" des Objekts wie ein Array auf, du kannst auch direkt ein Array statt Object benutzen, womit die Problematik sich erübrigt.
Danke, hat geholfen.
Habe da nicht richtig drüber nachgedacht! :)
Hai Kai!
Habe ein Object:
Mache aus deinem Object ein Array, dann ist es auch iterierbar.
var cards=new Object();
Gruss