Evaluating JavaScript expressions
To use Qt QML in your programs, you have to enable the script module for your projects by adding the QT += qml
line to the project file.
C++ compilers do not understand JavaScript. Therefore, to execute any script, you need to have a running interpreter that will parse the script and evaluate it. In Qt, this is done with the QJSEngine
class. This is a JavaScript runtime that handles the execution of script code and manages all the resources related to scripts. It provides the evaluate()
method, which can be used to execute JavaScript expressions. Let's look at a "Hello World" program using QJSEngine
:
#include <QCoreApplication>
#include <QJSEngine>
int main(int argc, char **argv) {
QCoreApplication app(argc, argv);
QJSEngine engine;
engine.installExtensions(QJSEngine::ConsoleExtension);
engine.evaluate("console.log('Hello World!');");
return 0;
}
This program is very simple. First, it creates an application object that is required...