QJSValueIterator Class
QJSValueIterator 클래스는 ` QJSValue`에 대한 Java 스타일의 이터레이터를 제공합니다. 더 보기...
| 헤더: | #include <QJSValueIterator> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS Qml) target_link_libraries(mytarget PRIVATE Qt6::Qml) |
| qmake: | QT += qml |
공개 함수
| QJSValueIterator(const QJSValue &object) | |
| ~QJSValueIterator() | |
| bool | hasNext() const |
| QString | name() const |
| bool | next() |
| QJSValue | value() const |
| QJSValueIterator & | operator=(QJSValue &object) |
상세 설명
QJSValueIterator 생성자는 QJSValue 를 인수로 받습니다. 생성 후, 이터레이터는 속성 시퀀스의 맨 처음에 위치하게 됩니다. 다음은 QJSValue 의 모든 속성을 순회하는 방법입니다:
QJSValue object;
...
QJSValueIterator it(object);
while (it.hasNext()) {
it.next();
qDebug() << it.name() << ": " << it.value().toString();
}next()는 이터레이터를 한 단계 앞으로 이동시킵니다. name() 및 value() 함수는 건너뛴 마지막 항목의 이름과 값을 반환합니다.
QJSValueIterator는 QJSValue 의 자체 속성만 반복 처리하며, 즉 프로토타입 체인을 따르지 않는다는 점에 유의하십시오. 프로토타입 체인을 따르려면 다음과 같은 루프를 사용할 수 있습니다:
QJSValue obj =...; // 반복할 객체
while (obj.isObject()) {
QJSValueIterator it(obj);
while (it.hasNext()) {
it.next();
qDebug() << it.name();
}
obj = obj.prototype();
}QJSValue::property()도 참조하십시오 .
멤버 함수 문서
QJSValueIterator::QJSValueIterator(const QJSValue &object)
object 를 순회하기 위한 이터레이터를 생성합니다. 이터레이터는 속성 시퀀스의 맨 앞(첫 번째 속성 이전)에 위치하도록 설정됩니다.
[noexcept] QJSValueIterator::~QJSValueIterator()
이테레이터를 삭제합니다.
bool QJSValueIterator::hasNext() const
이테레이터 앞쪽에 항목이 하나 이상 있는 경우(즉, 이테레이터가 속성 시퀀스의 맨 뒤에 있지 않은 경우) true를 반환하고, 그렇지 않은 경우 false를 반환합니다.
next()도 참조하십시오 .
QString QJSValueIterator::name() const
next()를 사용하여 건너뛴 마지막 속성의 이름을 반환합니다.
value()도 참조하십시오 .
bool QJSValueIterator::next()
이터레이터를 한 위치씩 앞으로 이동시킵니다. 이터레이터 앞에 항목이 하나 이상 있는 경우(즉, 이터레이터가 아직 속성 시퀀스의 맨 뒤에 있지 않은 경우) true를 반환하고, 그렇지 않은 경우 false를 반환합니다.
QJSValue QJSValueIterator::value() const
next()을 사용하여 건너뛴 가장 최근 속성의 값을 반환합니다.
name()도 참조하십시오 .
QJSValueIterator &QJSValueIterator::operator=(QJSValue &object)
이테레이터가 ` object`에서 작동하도록 합니다. 이테레이터는 속성 시퀀스의 맨 앞(첫 번째 속성 이전)에 위치하도록 설정됩니다.
© 2026 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.