// <? <-- ignore thisjust for highlighting this source


//~ prototype for removing a random element from an array
Array.prototype.removeRandomElement = function ()
{
    
//~ get length of array
    
var this.length;

    
//~ choose a random element
    
var random(l);

    
0;
    for (var 
key in this) {
    
//~ run through all elements of the array

        
if (typeof (this[key]) != "function") {
        
//~ element is not a function
            
if (== r) {
            
//~ this is the element to delete
                
trace("key: "+key+" was deleted");
                
//~ delete the element
                
delete this[key];
                
//~ end loop
                
break;
            } 
//~ end if element to delete
            
i++;
        } 
//~ end if is function
    
//~ end for elements in array
//~ end function removeRandom()


//~ usage:

var myArray = new Array();

myArray["a"]    =    "bla";
myArray["b"]    =    "blubb";
myArray[3]        =    "fasel";

myArray.removeRandomElement();