В QtScript можно просто работать с QVariantMap, при чём в обе стороны (С++ -> QtScript -> C++)
C++ (Qt)
QVariantMap params;
QScriptEngine engine;
QScriptValue scriptParams = engine.toScriptValue(params);
engine.globalObject().setProperty("params", scriptParams);
...
params = engine.fromScriptValue<QVariantMap>(scriptParams);
и легко к нему обращаться из скрипта
params.param1 = value1;
params.param2 = value2;
...
Как сделать подобное с QtWebKit?
Первый вариант - это экспортировать QObject с методами get() и set(), но работать с ним из скрипта не совсем удобно
Javascript
params.set('param1', value1);
params.get('param2');