beste manier om waarde aan een array toe te voegen
Johan Dam
21/10/2010 23:11:10Yoo,
Voor bepaalde dingen is het handig om waardes uit arrays te verwijderen, maar als je niet van te voren weet welke key de waarde krijgt, dan word het lastig.
Waardes zijn hier objecten
Een tijd geleden voegde ik ze zo toe
array[array.length] = new obj(array.length);
Door de array.length mee te geven weet ik de key en kan het object zichzelf verwijderen door delete array[this.key]
Werkt prima, maar laatst probeerde ik iets anders
var key = array.push(new obj());
array[key -1].key = key - 1;
Beide manieren vind ik niet geweldig maar ik weet geen alternatief.
Vandaar dat ik hier kom om jullie te vragen welke methode beter is, of dat er miss nog een betere is die ik niet ken.
Het gaat er dus om om een object zichzelf te laten verwijderen uit een array
Voor bepaalde dingen is het handig om waardes uit arrays te verwijderen, maar als je niet van te voren weet welke key de waarde krijgt, dan word het lastig.
Waardes zijn hier objecten
Een tijd geleden voegde ik ze zo toe
array[array.length] = new obj(array.length);
Door de array.length mee te geven weet ik de key en kan het object zichzelf verwijderen door delete array[this.key]
Werkt prima, maar laatst probeerde ik iets anders
var key = array.push(new obj());
array[key -1].key = key - 1;
Beide manieren vind ik niet geweldig maar ik weet geen alternatief.
Vandaar dat ik hier kom om jullie te vragen welke methode beter is, of dat er miss nog een betere is die ik niet ken.
Het gaat er dus om om een object zichzelf te laten verwijderen uit een array
PHP hulp
21/11/2024 19:27:58Mark L
22/10/2010 00:37:48Ik denk dat dit alleen kan, door een functie te creëren waarbij je zowel het object als de array meegeeft.
Dan gaat de functie de array doorlopen en vergelijkt elke waarde met het object. Komen ze overeen; verwijderen.
Maar dit is echt heel inefficiënt.
Dan gaat de functie de array doorlopen en vergelijkt elke waarde met het object. Komen ze overeen; verwijderen.
Maar dit is echt heel inefficiënt.
Pim -
22/10/2010 10:45:26Je hebt twee opties:
Gebruik een for-in loop en selecteer de benodigde waarde en je hebt de key.
Gebruik een identifyer uit het object als key.
Gebruik een for-in loop en selecteer de benodigde waarde en je hebt de key.
Gebruik een identifyer uit het object als key.
Johan Dam
22/10/2010 12:12:24Dan ga ik toch maar voor de array[array.length] = new obj(array.length) manier
Deze is lekker kort en redelijk simpel.
Deze is lekker kort en redelijk simpel.