Sonntag, Mai 31, 2020

Actionscript-Objekt, das verschiedene Eigenschaften

Wie kann ich die Anzahl der Eigenschaften in einer generischen Actionscript-Objekt? (Wie die Array-Länge)

InformationsquelleAutor Fragsworth | 2011-01-15

2 Kommentare

  1. 20

    Haben Sie, um eine Schleife über alle Elemente zu zählen:

    function objectLength(myObject:Object):int {
     var cnt:int=0;
    
     for (var s:String in myObject) cnt++;
    
     return cnt;
    }
    
    var o:Object={foo:"hello", bar:"world"};
    trace(objectLength(o)); //output 2
    • Scheint zu rufen für eine bessere API, wie javascript-Objekt.keys()
  2. 0

    Sogar kürzeren code hier:

    var o:Object={foo:"hello",bar:"world",cnt:2};
    trace(o.cnt);  //output  2;

    Nur daran erinnern, ein update der letzten argument in der Objekt-Liste, wenn überhaupt, nichts ist Hinzugefügt, um es. Das ist der wichtigste Nachteil dieses Ansatzes ist, denke ich. Und jetzt, natürlich, die .cnt eigentlich nicht zurück der true-Liste der Länge, sondern es ist die Liste length – 1.

    • Das könnte schwierig werden. cnt könnte ungenau in Fällen, in denen eine Eigenschaft überschreibt eine bereits vorhandene Eigenschaft oder eine Eigenschaft gelöscht wird, ohne vorhandenen. So, Prüfungen notwendig sein würde, jedes mal, wenn das Objekt geändert wird.

Kostenlose Online-Tests