from PyQt5.QtCore import *
from PyQt5.QtGui import *
from PyQt5.QtWidgets import *
from PyQt5.QtQml import *
myEngine=QJSEngine()
three = myEngine.evaluate("1 + 2")
print(three.toNumber())# works well
myEngine.globalObject().setProperty("myNumber", QJSValue(123))
myNumberPlusOne = myEngine.evaluate("myNumber + 1");
print(myNumberPlusOne.toNumber())# return the wrong value !!!!!!
fun = myEngine.evaluate("(function(a, b) { return a + b; })");
args =[QJSValue(1), QJSValue(2)]#it would be better if we could simply write this as args =[1,2],we cannot do this right now ,bad !!!!
threeAgain = fun.call( args)
print(threeAgain.toString())# return the wrong value !!!!!!