-
Thanks Michael - that's an elegant solution.
Don't worry about the array name though - just a simplified example for
the sake of the list.
Thanks again all.
T. Michael Keesey wrote:
Quite simple:
for (var key:String in myArray1) {
if (myArray1[key][1] < 0) {
myArray1.splice(Number(key), 1);
}
}
BTW, "myArray1" is not a great name for a variable ... why not
"scoreRecords" or "scores" or something? Also, storing different types
of data in an array is a recipe for confusions. The element arrays
would be better as objects, e.g.: {name: "A", score: -1}.Then the code
would be more readable:
for (var key:String in scoreRecords) {
var record:Object = scoreRecords[key];
if (record.score < 0) {
scoreRecords.splice(Number(key), 1);
}
}
Or the whole thing could just be an associative array (i.e., hash object):
var scores:Object = {A: -1, B: -1, C: 0};
// ...
for (var key:String in scoreRecords) {
if (scoreRecords[key] < 0) {
delete scoreRecords[key];
}
}
On 12/21/06, Mike Cobb <[EMAIL PROTECTED]> wrote:
-
Hi everyone,
I'm having a braindead moment today, which I was hoping someone could
help me with.
I have the following array...
//Create array with 5 elements
var myArray1:Array = new Array();
myArray1.push( new Array("A:", -1) );
myArray1.push( new Array("B:", -1) );
myArray1.push( new Array("C:", 0) );
myArray1.push( new Array("D:", 0) );
myArray1.push( new Array("E:", -1) );
myArray1.push( new Array("F:", 1) );
myArray1.push( new Array("G:", 0) );
myArray1.push( new Array("H:", -1) );
//name, score
...and I'm trying to remove all the elements in myArray1 with a score of
less than 0 without sorting/reordering the array at all.
I was trying to use a 'for loop', but obviously as the elements are
removed, the length of the array changes & causes the wrong elements to
be deleted.
Can anyone help?
Thanks,
<Mike>
--
-------------------------------------
Mike Cobb
Creative Director
HMC Interactive
-------------------------------------
Tel: + 44 (0)845 20 11 462
Mob: + 44 (0)785 52 54 743
Web: http://www.hmcinteractive.co.uk
-------------------------------------
Grosvenor House, Belgrave Lane,
Plymouth, PL4 7DA, UK.
-------------------------------------
I've got a new e-mail address: [EMAIL PROTECTED]
Please update your address book. Thanks.
_______________________________________________
Flashcoders@chattyfig.figleaf.com
To change your subscription options or search the archive:
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders
Brought to you by Fig Leaf Software
Premier Authorized Adobe Consulting and Training
http://www.figleaf.com
http://training.figleaf.com
--
-------------------------------------
Mike Cobb
Creative Director
HMC Interactive
-------------------------------------
Tel: + 44 (0)845 20 11 462
Mob: + 44 (0)785 52 54 743
Web: http://www.hmcinteractive.co.uk
-------------------------------------
Grosvenor House, Belgrave Lane,
Plymouth, PL4 7DA, UK.
-------------------------------------
I've got a new e-mail address: [EMAIL PROTECTED]
Please update your address book. Thanks.
_______________________________________________
Flashcoders@chattyfig.figleaf.com
To change your subscription options or search the archive:
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders
Brought to you by Fig Leaf Software
Premier Authorized Adobe Consulting and Training
http://www.figleaf.com
http://training.figleaf.com