QJSValueIterator Class
Die Klasse QJSValueIterator bietet einen Iterator im Java-Stil für QJSValue. Mehr...
Kopfzeile: | #include <QJSValueIterator> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS Qml) target_link_libraries(mytarget PRIVATE Qt6::Qml) |
qmake: | QT += qml |
Öffentliche Funktionen
QJSValueIterator(const QJSValue &object) | |
~QJSValueIterator() | |
bool | hasNext() const |
QString | name() const |
bool | next() |
QJSValue | value() const |
QJSValueIterator & | operator=(QJSValue &object) |
Detaillierte Beschreibung
Der Konstruktor von QJSValueIterator nimmt ein QJSValue als Argument entgegen. Nach der Konstruktion befindet sich der Iterator am Anfang der Sequenz von Eigenschaften. Im Folgenden wird beschrieben, wie man über alle Eigenschaften eines QJSValue iteriert:
QJSValue object;...QJSValueIterator it(object);while (it.hasNext()) { it.next(); qDebug() << it.name() << ": " << it.value().toString(); }
Die Funktion next() schaltet den Iterator weiter. Die Funktionen name() und value() geben den Namen und den Wert des zuletzt übersprungenen Elements zurück.
Beachten Sie, dass QJSValueIterator nur über die eigenen Eigenschaften von QJSValue iteriert, d.h. er folgt nicht der Prototypenkette. Sie können eine Schleife wie diese verwenden, um der Prototypenkette zu folgen:
QJSValue obj = ...; // das Objekt, über das iteriert werden sollwhile (obj.isObject()) { QJSValueIterator it(obj); while (it.hasNext()) { it.next(); qDebug() << it.name(); } obj = obj.prototype(); }
Siehe auch QJSValue::property().
Dokumentation der Mitgliedsfunktionen
QJSValueIterator::QJSValueIterator(const QJSValue &object)
Konstruiert einen Iterator zum Durchlaufen von object. Der Iterator wird so eingestellt, dass er am Anfang der Eigenschaftsfolge steht (vor der ersten Eigenschaft).
[noexcept]
QJSValueIterator::~QJSValueIterator()
Zerstört den Iterator.
bool QJSValueIterator::hasNext() const
Gibt true zurück, wenn sich mindestens ein Element vor dem Iterator befindet (d. h. der Iterator befindet sich nicht am Ende der Eigenschaftsfolge); andernfalls wird false zurückgegeben.
Siehe auch next().
QString QJSValueIterator::name() const
Gibt den Namen der letzten Eigenschaft zurück, die mit next() übersprungen wurde.
Siehe auch value().
bool QJSValueIterator::next()
Bringt den Iterator um eine Position weiter. Gibt true zurück, wenn sich mindestens ein Element vor dem Iterator befand (d. h. der Iterator war nicht bereits am Ende der Eigenschaftsfolge); andernfalls wird false zurückgegeben.
Siehe auch hasNext() und name().
QJSValue QJSValueIterator::value() const
Gibt den Wert der letzten Eigenschaft zurück, die mit next() übersprungen wurde.
Siehe auch name().
QJSValueIterator &QJSValueIterator::operator=(QJSValue &object)
Lässt den Iterator auf object arbeiten. Der Iterator wird so eingestellt, dass er am Anfang der Eigenschaftsfolge steht (vor der ersten Eigenschaft).
© 2025 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.