Frage

Ist es möglich, die Speicheradresse einer JavaScript-Variablen zu finden? Der JavaScript-Code ist ein Teil von (eingebettet in) eine normale Anwendung, in JavaScript als Frontend zu C ++ verwendet wird, und läuft nicht auf dem Browser. Die JavaScript-Implementierung verwendet wird, ist Spider.

War es hilfreich?

Lösung

Wenn es überhaupt möglich sei, wäre es sehr abhängig von dem JavaScript-Engine sein. Je moderne JavaScript-Engine kompilieren ihren Code unter Verwendung eines nur Compiler in der Zeit und in Unordnung mit ihren internen Variablen wäre entweder schlecht für die Leistung oder schlecht für die Stabilität sein.

Wenn der Motor es erlaubt, warum nicht einen Funktionsaufruf Schnittstelle zu einem gewissen nativen Code macht den Variablenwert zu tauschen?

Andere Tipps

Es ist mehr oder weniger unmöglich - Javascripts Auswertestrategie immer Anruf ist von Wert zu verwenden, aber im Fall von Gegenständen (einschließlich Arrays) übergebene Wert ist eine Referenz auf das Objekt, das nicht kopiert oder geklont wird. Wenn Sie das Objekt selbst in der Funktion zuweisen, wird das Original nicht geändert werden, aber wenn Sie eine der Eigenschaften des Objekts neu zuzuweisen, dass das ursprüngliche Objekt beeinflussen.

Das heißt, was wollen Sie erreichen? Wenn es nur komplexe Daten zwischen C ++ und Javascript vorbei, könnten Sie eine JSON-Bibliothek zu kommunizieren. Senden Sie ein JSON-Objekt in C ++ für die Verarbeitung, und ein JSON-Objekt der alten zu ersetzen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top