+ Antworten
Ergebnis 1 bis 3 von 3

Thema: delete() hat keine Auswirkung auf length

  1. #1
    TP-Senior Erdferkel macht alles soweit korrekt Avatar von Erdferkel
    Registriert seit
    Oct 2004
    Beiträge
    113

    delete() hat keine Auswirkung auf length

    ist test.length == 12 und wir löschen mit delete(test[3]) einen wert daraus, bleibt test.length == 12. weiss jemand wieso?

  2. #2
    TP-Specialist rewboss ist ein richtiges Arbeitstier - DANKE rewboss ist ein richtiges Arbeitstier - DANKE rewboss ist ein richtiges Arbeitstier - DANKE rewboss ist ein richtiges Arbeitstier - DANKE rewboss ist ein richtiges Arbeitstier - DANKE rewboss ist ein richtiges Arbeitstier - DANKE Avatar von rewboss
    Registriert seit
    Mar 2005
    Ort
    Unterfranken
    Beiträge
    2.639
    Weil Array.length findet den Schlüssel mit der höchsten Zahl, addiert 1 und gibt das Ergebnis aus:

    Code:
    myArray=new Array();
    myArray[3]='Hallo';
    document.write(myArray.length); // Ergibt 4

  3. #3
    TP-Moderator Malleus ist ein richtiges Arbeitstier - DANKE Malleus ist ein richtiges Arbeitstier - DANKE Malleus ist ein richtiges Arbeitstier - DANKE Malleus ist ein richtiges Arbeitstier - DANKE Avatar von Malleus
    Registriert seit
    Aug 2004
    Ort
    Homburg / Saarland
    Beiträge
    711
    Hi, "delete" löscht bzw. entfernt nur das "Objekt/Element", das an der entsprechenden Stelle des Array steht.

    Du könntest aber das ganze leicht "nachbauen":

    Code:
    <html>
    <head>
    <title>Malleus' Test</title>
    <script type="text/javascript">
    <!--
    
    Array.prototype.deleteIndex = function( v )
    {
        var T = this ,
        o = T[ v ];
    
        for ( var i = v ; i < T.length ; i++ )
            T[ i ] = T[ i + 1 ];
    
        T.length -= 1;
        return o;
    }
    
    
    function doIt()
    {
    
    var myValues=new Array("a","b","c","d","e","g");
    myValues.deleteIndex(2);
    alert(myValues.length);
    alert(myValues.join(" - "));
    
    }
    
    </script>
    
    </head>
    
    <body>
    <button onclick="doIt()">Click Me</button>
    </body>
    </html>
    Tschau

    Frank

+ Antworten

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

     

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51