Auf dieser Seite

QJSManagedValue Class

QJSManagedValue steht für einen Wert im JavaScript-Heap, der zu einem „ QJSEngine “ gehört. Mehr dazu...

Header: #include <QJSManagedValue>
CMake: find_package(Qt6 REQUIRED COMPONENTS Qml)
target_link_libraries(mytarget PRIVATE Qt6::Qml)
qmake: QT += qml
Seit: Qt 6.1

Öffentliche Typen

enum Type { Undefined, Boolean, Number, String, Object, …, Function }

Öffentliche Funktionen

QJSManagedValue()
QJSManagedValue(QJSValue value, QJSEngine *engine)
QJSManagedValue(const QJSPrimitiveValue &value, QJSEngine *engine)
QJSManagedValue(const QString &string, QJSEngine *engine)
QJSManagedValue(const QVariant &variant, QJSEngine *engine)
QJSManagedValue(QJSManagedValue &&other)
~QJSManagedValue()
QJSValue call(const QJSValueList &arguments = {}) const
QJSValue callAsConstructor(const QJSValueList &arguments = {}) const
QJSValue callWithInstance(const QJSValue &instance, const QJSValueList &arguments = {}) const
bool deleteProperty(const QString &name)
bool deleteProperty(quint32 arrayIndex)
QJSEngine *engine() const
bool equals(const QJSManagedValue &other) const
bool hasOwnProperty(const QString &name) const
bool hasOwnProperty(quint32 arrayIndex) const
bool hasProperty(const QString &name) const
bool hasProperty(quint32 arrayIndex) const
bool isArray() const
bool isBoolean() const
bool isDate() const
bool isError() const
bool isFunction() const
bool isInteger() const
bool isNull() const
bool isNumber() const
bool isObject() const
bool isQMetaObject() const
bool isQObject() const
bool isRegularExpression() const
bool isString() const
bool isSymbol() const
bool isUndefined() const
bool isUrl() const
bool isVariant() const
QJSValue property(const QString &name) const
QJSValue property(quint32 arrayIndex) const
QJSManagedValue prototype() const
void setProperty(const QString &name, const QJSValue &value)
void setProperty(quint32 arrayIndex, const QJSValue &value)
void setPrototype(const QJSManagedValue &prototype)
bool strictlyEquals(const QJSManagedValue &other) const
bool toBoolean() const
QDateTime toDateTime() const
int toInteger() const
QJSValue toJSValue() const
double toNumber() const
QJSPrimitiveValue toPrimitive() const
const QMetaObject *toQMetaObject() const
QObject *toQObject() const
QRegularExpression toRegularExpression() const
QString toString() const
QUrl toUrl() const
QVariant toVariant() const
QJSManagedValue::Type type() const
QJSManagedValue &operator=(QJSManagedValue &&other)

Ausführliche Beschreibung

Die Klasse `QJSManagedValue` ermöglicht die Interaktion mit JavaScript-Werten auf fast dieselbe Weise, wie Sie dies auch direkt aus JavaScript heraus tun können. Sie können Eigenschaften und Prototypen abrufen und festlegen sowie auf Arrays zugreifen. Darüber hinaus können Sie den Wert in die Qt-Entsprechungen von JavaScript-Objekten umwandeln. So kann beispielsweise ein `Url`-Objekt in ein ` QUrl` umgewandelt werden.

Ein `QJSManagedValue` ist immer an ein bestimmtes ` QJSEngine` gebunden. Er kann nicht eigenständig verwendet werden. Das bedeutet, dass ein `QJSManagedValue` aus einer Engine nicht als Eigenschaft oder Prototyp eines `QJSManagedValue` aus einer anderen Engine dienen kann.

Im Gegensatz zu ` QJSValue` befinden sich fast alle von `QJSManagedValue` gehaltenen Werte auf dem JavaScript-Heap. Es gibt keinen Inline- oder nicht verwalteten Speicher. Daher können Sie den Prototyp eines primitiven Werts abrufen und die Eigenschaft ` length ` einer Zeichenkette abrufen.

Nur standardmäßig konstruierte oder verschobene `QJSManagedValues` enthalten keinen Wert auf dem JavaScript-Heap. Sie repräsentieren ` undefined`, das keine Eigenschaften oder Prototypen besitzt.

Im Gegensatz zu „ QJSValue “ fängt „QJSManagedValue“ zudem keine JavaScript-Ausnahmen ab. Wenn eine Operation an einem „QJSManagedValue“ einen Fehler verursacht, gibt sie in der Regel einen „ undefined “-Wert zurück, und „ QJSEngine::hasError()“ gibt anschließend „ true “ zurück. Sie können die Ausnahme dann nach eigenem Ermessen mit „ QJSEngine::catchError()“ abfangen oder sie im Stack weiterleiten.

Hinweis: Da die Referenz auf den Wert im JavaScript-Heap bei der Zerstörung freigegeben werden muss, können Sie einen `QJSManagedValue` nicht in einen anderen Thread verschieben. Die Freigabe würde im neuen Thread erfolgen, was zu einer Race Condition mit dem Garbage Collector im ursprünglichen Thread führen würde. Dies bedeutet auch, dass Sie einen `QJSManagedValue` nicht über die Lebensdauer seiner Engine hinaus halten können.

Die empfohlene Vorgehensweise beim Umgang mit einem `QJSManagedValue` besteht darin, ihn auf dem Stack zu erstellen – möglicherweise durch Verschieben eines ` QJSValue ` und Hinzufügen einer Engine –, dann die erforderlichen Operationen daran durchzuführen und ihn schließlich zur Speicherung wieder in einen ` QJSValue ` zu verschieben. Das Verschieben zwischen `QJSManagedValue` und ` QJSValue ` erfolgt schnell.

Dokumentation zu Mitgliedstypen

enum QJSManagedValue::Type

Diese Enumeration repräsentiert die nativen JavaScript-Typen, wie sie in ECMA-262 festgelegt sind.

KonstanteWertBeschreibung
QJSManagedValue::Undefined0Der Typ „ undefined “
QJSManagedValue::Boolean1Der Typ „ boolean “
QJSManagedValue::Number2Der Typ „ number “
QJSManagedValue::String3Der Typ „ string “
QJSManagedValue::Object4Der Typ „ object “
QJSManagedValue::Symbol5Der Typ „ symbol “
QJSManagedValue::Function6Der Typ „ function “

Beachten Sie, dass der Wert „ null “ kein eigenständiger Typ ist, sondern eine besondere Art von Objekt. Sie können ein „ QJSManagedValue “ mit der Methode „ isNull()“ auf diese Bedingung abfragen. Darüber hinaus verfügt JavaScript über keinen Integer-Typ, kennt jedoch eine spezielle Behandlung von Zahlen zur Vorbereitung auf Operationen, die ausschließlich mit Ganzzahlen durchgeführt werden. Sie können bei einem „ QJSManagedValue “ mithilfe der Methode „ isInteger()“ abfragen, ob es das Ergebnis einer solchen Behandlung enthält.

Dokumentation zu Member-Funktionen

[constexpr noexcept default] QJSManagedValue::QJSManagedValue()

Erzeugt einen `QJSManagedValue`, der den Wert „ undefined “ aus JavaScript repräsentiert. Dies ist der einzige Wert, der nicht im JavaScript-Heap gespeichert wird. Der Aufruf von ` engine()` für einen standardmäßig konstruierten `QJSManagedValue` gibt `nullptr` zurück.

QJSManagedValue::QJSManagedValue(QJSValue value, QJSEngine *engine)

Erstellt einen `QJSManagedValue` aus ` value` unter Verwendung des Heaps von ` engine`. Wenn ` value ` selbst verwaltet wird und die Engine, zu der es gehört, nicht ` engine` ist, ist das Ergebnis ein Wert vom Typ ` undefined `, und es wird eine Warnung ausgegeben.

QJSManagedValue::QJSManagedValue(const QJSPrimitiveValue &value, QJSEngine *engine)

Erstellt einen `QJSManagedValue` aus ` value ` unter Verwendung des Heaps von ` engine`.

QJSManagedValue::QJSManagedValue(const QString &string, QJSEngine *engine)

Erstellt einen `QJSManagedValue` aus ` string ` unter Verwendung des Heaps von ` engine`.

QJSManagedValue::QJSManagedValue(const QVariant &variant, QJSEngine *engine)

Erstellt einen `QJSManagedValue` aus ` variant ` unter Verwendung des Heaps von ` engine`.

QJSManagedValue::QJSManagedValue(QJSManagedValue &&other)

Erstellt einen `QJSManagedValue` aus ` other`. Dadurch verbleibt ` other ` im Zustand der Standardkonstruktion, in dem es den Wert „undefiniert“ darstellt und keiner Engine angehört.

[noexcept] QJSManagedValue::~QJSManagedValue()

Löscht den „ QJSManagedValue “.

Hinweis: Dadurch wird der Speicherplatz freigegeben, den es auf dem JavaScript-Heap belegt. Sie dürfen ein „ QJSManagedValue “ nicht aus einem anderen Thread heraus zerstören als dem, in dem sich das „ QJSEngine “ befindet, zu dem es gehört.

QJSValue QJSManagedValue::call(const QJSValueList &arguments = {}) const

Wenn dieses ` QJSManagedValue ` ein JavaScript-FunctionObject darstellt, wird es mit dem angegebenen ` arguments` aufgerufen und das Ergebnis zurückgegeben. Andernfalls wird ein JavaScript- undefined -Wert zurückgegeben.

Die „ arguments “ müssen entweder primitive Werte sein oder zum selben „ QJSEngine “ gehören wie dieses „ QJSManagedValue “. Andernfalls wird der Aufruf nicht ausgeführt und ein JavaScript-Wert vom Typ „ undefined “ zurückgegeben.

QJSValue QJSManagedValue::callAsConstructor(const QJSValueList &arguments = {}) const

Wenn dieses ` QJSManagedValue ` ein JavaScript-FunctionObject darstellt, wird es als Konstruktor mit dem angegebenen ` arguments` aufgerufen und das Ergebnis zurückgegeben. Andernfalls wird ein JavaScript- undefined -Wert zurückgegeben.

Die arguments müssen entweder primitive Werte sein oder zum selben QJSEngine gehören wie dieses QJSManagedValue. Andernfalls wird der Aufruf nicht ausgeführt und ein JavaScript- undefined -Wert zurückgegeben.

QJSValue QJSManagedValue::callWithInstance(const QJSValue &instance, const QJSValueList &arguments = {}) const

Wenn „ QJSManagedValue “ ein JavaScript-FunctionObject darstellt, wird es unter „ instance “ mit dem angegebenen „ arguments “ aufgerufen und das Ergebnis zurückgegeben. Andernfalls wird ein JavaScript- undefined -Wert zurückgegeben.

Die Werte ` arguments ` und ` instance ` müssen entweder primitive Werte sein oder zum selben ` QJSEngine ` gehören wie dieses ` QJSManagedValue`. Andernfalls wird der Aufruf nicht ausgeführt und ein JavaScript-Wert vom Typ ` undefined ` zurückgegeben.

bool QJSManagedValue::deleteProperty(const QString &name)

Löscht die Eigenschaft „ name “ aus diesem „ QJSManagedValue “. Gibt „ true “ zurück, wenn das Löschen erfolgreich war, andernfalls „ false “.

bool QJSManagedValue::deleteProperty(quint32 arrayIndex)

Löscht den unter arrayIndex gespeicherten Wert aus diesem QJSManagedValue. Gibt true zurück, wenn das Löschen erfolgreich war, andernfalls false.

QJSEngine *QJSManagedValue::engine() const

Gibt die „ QJSEngine “ zurück, zu der diese „ QJSManagedValue “ gehört. Beachten Sie, dass die Engine immer gültig ist, es sei denn, die „ QJSManagedValue “ wurde mit der Standardkonstruktion initialisiert oder verschoben. Im letzteren Fall wird ein „nullptr“ zurückgegeben.

bool QJSManagedValue::equals(const QJSManagedValue &other) const

Ruft den JavaScript-Operator „==“ für diese Werte auf: QJSManagedValue und other und gibt das Ergebnis zurück.

Siehe auch strictlyEquals.

bool QJSManagedValue::hasOwnProperty(const QString &name) const

Gibt „ true “ zurück, wenn dieses „ QJSManagedValue “ eine Eigenschaft „ name “ besitzt; andernfalls wird „ false “ zurückgegeben. Die Eigenschaften der Prototypkette werden nicht berücksichtigt.

bool QJSManagedValue::hasOwnProperty(quint32 arrayIndex) const

Gibt „ true “ zurück, wenn dieses „ QJSManagedValue “ einen Array-Index „ arrayIndex “ enthält; andernfalls wird „ false “ zurückgegeben. Die Eigenschaften der Prototyp-Kette werden nicht berücksichtigt.

bool QJSManagedValue::hasProperty(const QString &name) const

Gibt „ true “ zurück, wenn dieses „ QJSManagedValue “ eine Eigenschaft „ name “ besitzt; andernfalls wird „ false “ zurückgegeben. Dabei werden die Eigenschaften der Prototyp-Kette berücksichtigt.

bool QJSManagedValue::hasProperty(quint32 arrayIndex) const

Gibt „ true “ zurück, wenn dieses „ QJSManagedValue “ einen Array-Index „ arrayIndex “ enthält; andernfalls wird „ false “ zurückgegeben. Dabei werden die Eigenschaften der Prototyp-Kette berücksichtigt.

bool QJSManagedValue::isArray() const

Gibt „ true “ zurück, wenn dieser Wert ein JavaScript-Array-Objekt darstellt, andernfalls „ false “.

bool QJSManagedValue::isBoolean() const

Gibt „ true “ zurück, wenn der Typ dieses „ QJSManagedValue “ „ boolean “ lautet, andernfalls „ false “.

bool QJSManagedValue::isDate() const

Gibt „ true “ zurück, wenn dieser Wert ein JavaScript-Date-Objekt darstellt, andernfalls „ false “.

bool QJSManagedValue::isError() const

Gibt „ true “ zurück, wenn dieser Wert ein JavaScript-Fehlerobjekt darstellt, andernfalls „ false “.

bool QJSManagedValue::isFunction() const

Gibt „ true “ zurück, wenn der Typ dieses „ QJSManagedValue “ „ function “ ist, andernfalls „ false “.

bool QJSManagedValue::isInteger() const

Gibt „ true “ zurück, wenn diese „ QJSManagedValue “ einen ganzzahligen Wert enthält, andernfalls „ false “. Das Speicherformat einer Zahl hat keinen Einfluss auf das Ergebnis der darauf durchgeführten Operationen; wird jedoch eine Ganzzahl gespeichert, werden viele Operationen schneller ausgeführt.

bool QJSManagedValue::isNull() const

Gibt „ true “ zurück, wenn diese „ QJSManagedValue “ den Wert „ null “ enthält, andernfalls „ false “.

bool QJSManagedValue::isNumber() const

Gibt „ true “ zurück, wenn der Typ dieses „ QJSManagedValue “ „ number “ ist, andernfalls „ false “.

bool QJSManagedValue::isObject() const

Gibt „ true “ zurück, wenn der Typ dieses „ QJSManagedValue “ „ object “ ist, andernfalls „ false “.

bool QJSManagedValue::isQMetaObject() const

Gibt „ true “ zurück, wenn dieser Wert einen auf dem JavaScript-Heap verwalteten „ QMetaObject “-Zeiger darstellt, andernfalls „ false “.

bool QJSManagedValue::isQObject() const

Gibt ` true ` zurück, wenn dieser Wert einen auf dem JavaScript-Heap verwalteten ` QObject `-Zeiger darstellt, andernfalls ` false `.

bool QJSManagedValue::isRegularExpression() const

Gibt „ true “ zurück, wenn dieser Wert ein JavaScript-Objekt für reguläre Ausdrücke darstellt, andernfalls „ false “.

bool QJSManagedValue::isString() const

Gibt „ true “ zurück, wenn der Typ dieses „ QJSManagedValue “ „ string “ ist, andernfalls „ false “.

bool QJSManagedValue::isSymbol() const

Gibt „ true “ zurück, wenn der Typ dieses „ QJSManagedValue “ „ symbol “ ist, andernfalls „ false “.

bool QJSManagedValue::isUndefined() const

Gibt „ true “ zurück, wenn der Typ dieses „ QJSManagedValue “ „ undefined “ ist, andernfalls „ false “.

bool QJSManagedValue::isUrl() const

Gibt „ true “ zurück, wenn dieser Wert ein JavaScript-URL-Objekt darstellt, andernfalls „ false “.

bool QJSManagedValue::isVariant() const

Gibt „ true “ zurück, wenn dieser Wert ein „ QVariant “ darstellt, das auf dem JavaScript-Heap verwaltet wird, andernfalls „ false “.

QJSValue QJSManagedValue::property(const QString &name) const

Gibt die Eigenschaft „ name “ dieses „ QJSManagedValue “ zurück. Wird die Eigenschaft im aktuellen Objekt nicht gefunden, wird die Prototyp-Kette durchsucht.

Siehe auch ` setProperty()`.

QJSValue QJSManagedValue::property(quint32 arrayIndex) const

Gibt die unter „ arrayIndex “ dieses „ QJSManagedValue “ gespeicherte Eigenschaft zurück. Wird die Eigenschaft im aktuellen Objekt nicht gefunden, wird die Prototypenkette durchsucht.

QJSManagedValue QJSManagedValue::prototype() const

Gibt den Prototyp für diese ` QJSManagedValue` zurück. Dies funktioniert bei jedem Wert. Sie können beispielsweise den JavaScript-Prototyp ` boolean ` aus einem Wert vom Typ ` boolean ` abrufen.

Siehe auch setPrototype().

void QJSManagedValue::setProperty(const QString &name, const QJSValue &value)

Setzt die Eigenschaft „ name “ auf „ value “ für dieses „ QJSManagedValue “. Dies ist nur bei JavaScript-Werten vom Typ „ object “ möglich. Außerdem muss „ value “ entweder ein primitiver Wert sein oder zur gleichen Engine gehören wie dieser Wert.

Siehe auch property().

void QJSManagedValue::setProperty(quint32 arrayIndex, const QJSValue &value)

Speichert das „ value “ unter „ arrayIndex “ in diesem „ QJSManagedValue “. Dies ist nur bei JavaScript-Werten vom Typ „ object “ möglich und wird nicht empfohlen, wenn der Wert kein Array ist. Außerdem muss „ value “ entweder ein primitiver Wert sein oder zur gleichen Engine gehören wie dieser Wert.

void QJSManagedValue::setPrototype(const QJSManagedValue &prototype)

Legt den Prototyp dieses QJSManagedValue auf prototype fest. Eine Voraussetzung ist, dass prototype zum selben QJSEngine gehört wie dieses QJSManagedValue und ein Objekt ist (einschließlich null). Außerdem muss dieses QJSManagedValue ebenfalls ein Objekt sein (ausgenommen null), und es dürfen keine Prototypzyklen entstehen.

Siehe auch prototype().

bool QJSManagedValue::strictlyEquals(const QJSManagedValue &other) const

Ruft den JavaScript-Operator „===“ für diese Werte auf: QJSManagedValue und other und gibt das Ergebnis zurück.

Siehe auch equals.

bool QJSManagedValue::toBoolean() const

Wandelt den verwalteten Wert in einen booleschen Wert um. Enthält der verwaltete Wert bereits einen booleschen Wert, wird dieser zurückgegeben. Andernfalls erfolgt eine boolesche Typumwandlung gemäß den JavaScript-Regeln.

QDateTime QJSManagedValue::toDateTime() const

Wenn dieses ` QJSManagedValue ` ein JavaScript-Date-Objekt enthält, wird ein entsprechendes ` QDateTime` zurückgegeben. Andernfalls wird ein ungültiges Objekt zurückgegeben.

int QJSManagedValue::toInteger() const

Wandelt den verwalteten Wert in eine Ganzzahl um. Dabei wird der Wert zunächst gemäß den Regeln von ` toNumber()` in eine Zahl umgewandelt und anschließend gemäß den Regeln für die Umwandlung der Argumente der JavaScript-Bitverschiebungsoperatoren in 32-Bit-Ganzzahlen auf den Ganzzahlbereich begrenzt.

Intern ist der Wert möglicherweise bereits als Ganzzahl gespeichert; in diesem Fall wird ein schneller Pfad gewählt.

Hinweis: Die Umwandlung eines verwalteten Werts in eine Zahl kann eine Ausnahme auslösen. Insbesondere können Symbole nicht in Zahlen umgewandelt werden, oder eine benutzerdefinierte `valueOf()`-Methode kann eine Ausnahme auslösen. In diesem Fall ist das Ergebnis 0, und die Engine führt nach der Umwandlung einen Fehler fort.

Hinweis: Die JavaScript-Regeln für die Umwandlung von Zahlen in 32-Bit-Ganzzahlen sind nicht intuitiv.

QJSValue QJSManagedValue::toJSValue() const

Kopiert diese Datei „ QJSManagedValue “ in eine neue Datei „ QJSValue “. Dies ist weniger effizient als die Erstellung einer Datei „ QJSValue “ mittels „move-construct“ aus einer Datei „ QJSManagedValue “, bewahrt jedoch die „ QJSManagedValue “ bei.

double QJSManagedValue::toNumber() const

Wandelt den verwalteten Wert in eine Zahl um. Enthält der verwaltete Wert eine Zahl, wird diese zurückgegeben. Andernfalls wird eine Zahlenumwandlung gemäß den JavaScript-Regeln durchgeführt.

Hinweis: Die Umwandlung eines verwalteten Werts in eine Zahl kann eine Ausnahme auslösen. Insbesondere können Symbole nicht in Zahlen umgewandelt werden, oder eine benutzerdefinierte `valueOf()`-Methode kann eine Ausnahme auslösen. In diesem Fall ist das Ergebnis 0 und die Engine führt nach der Umwandlung einen Fehler aus.

QJSPrimitiveValue QJSManagedValue::toPrimitive() const

Konvertiert den verwalteten Wert in ein ` QJSPrimitiveValue`. Wenn der verwaltete Wert einen von ` QJSPrimitiveValue` unterstützten Typ hat, wird der Wert kopiert. Andernfalls wird der Wert in eine Zeichenkette konvertiert und die Zeichenkette in ` QJSPrimitiveValue` gespeichert.

Hinweis: Die Konvertierung eines verwalteten Werts in eine Zeichenkette kann eine Ausnahme auslösen. Insbesondere können Symbole nicht in Zeichenketten umgewandelt werden, oder eine benutzerdefinierte ` toString()`-Methode kann eine Ausnahme auslösen. In diesem Fall ist das Ergebnis der Wert `undefined`, und die Engine führt nach der Konvertierung einen Fehler aus.

const QMetaObject *QJSManagedValue::toQMetaObject() const

Wenn dieser ` QJSManagedValue ` einen Zeiger ` QMetaObject ` enthält, wird dieser zurückgegeben. Andernfalls wird `nullptr` zurückgegeben.

QObject *QJSManagedValue::toQObject() const

Wenn dieser „ QJSManagedValue “ einen „ QObject “-Zeiger enthält, wird dieser zurückgegeben. Andernfalls wird „nullptr“ zurückgegeben.

QRegularExpression QJSManagedValue::toRegularExpression() const

Wenn dieses ` QJSManagedValue ` ein JavaScript-Objekt für reguläre Ausdrücke enthält, wird ein entsprechendes ` QRegularExpression` zurückgegeben. Andernfalls wird ein ungültiges Objekt zurückgegeben.

QString QJSManagedValue::toString() const

Wandelt den verwalteten Wert in eine Zeichenkette um. Wenn der verwaltete Wert eine Zeichenkette enthält, wird diese zurückgegeben. Andernfalls erfolgt eine Umwandlung in eine Zeichenkette gemäß den JavaScript-Regeln.

Hinweis: Die Konvertierung eines verwalteten Werts in eine Zeichenkette kann eine Ausnahme auslösen. Insbesondere können Symbole nicht in Zeichenketten umgewandelt werden, oder eine benutzerdefinierte toString()-Methode kann eine Ausnahme auslösen. In diesem Fall ist das Ergebnis eine leere Zeichenkette, und die Engine führt nach der Konvertierung einen Fehler weiter.

QUrl QJSManagedValue::toUrl() const

Wenn dieses ` QJSManagedValue ` ein JavaScript-URL-Objekt enthält, wird ein entsprechendes ` QUrl` zurückgegeben. Andernfalls wird ein ungültiges Objekt zurückgegeben.

QVariant QJSManagedValue::toVariant() const

Kopiert diese ` QJSManagedValue ` in eine neue ` QVariant`. Dabei wird auch eine nützliche ` QVariant ` erstellt, falls ` QJSManagedValue::isVariant()` den Wert „false“ zurückgibt. ` QVariant ` kann alle von ` QJSManagedValue` unterstützten Typen enthalten.

QJSManagedValue::Type QJSManagedValue::type() const

Gibt den JavaScript-Typ dieses „ QJSManagedValue “ zurück.

QJSManagedValue &QJSManagedValue::operator=(QJSManagedValue &&other)

Weist ein „ QJSManagedValue “ aus „ other “ per Move-Zuweisung zu. Dadurch verbleibt „ other “ im standardmäßig konstruierten Zustand, in dem es „undefined“ darstellt und zu keiner Engine gehört.

Hinweis: Dadurch wird der Speicherplatz freigegeben, den dieses „ QJSManagedValue “ auf dem JavaScript-Heap belegt. Sie dürfen ein „ QJSManagedValue “ nicht in einem anderen Thread per Move-Zuweisung zuweisen als dem, in dem sich das zugehörige „ QJSEngine “ befindet.

© 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.