写入QVariantmap的int不是Javascript中的数字

时间:2015-01-21 11:23:40

标签: javascript c++ qt qtscript

从可以从javascript访问的插槽函数中,我返回一个QVariantMap,因为我希望将数据转换为包含一些原语的JavaScript对象。

代码如下所示:

QVariantMap MyObject::createResults()
{
  QVariantMap ret;
  ret["num"] = 23948;
  ret["str1"]   = QString("bla");
  ret["str2"]   = QString("blub");
  return ret;
}

调用脚本如下所示:

  var myObj = new MyObject();
  var res = myObj.createResults();
  api.cout("typeof(res);      = " +typeof(res));      
  api.cout("typeof(res.num);  = " +typeof(res.num));  
  api.cout("typeof(res.str1); = " +typeof(res.str1)); 
  api.cout("typeof(res.str2); = " +typeof(res.str2)); 

并生成以下输出:

typeof(res);      = object
typeof(res.num);  = object
typeof(res.str1); = string
typeof(res.str2); = string

我必须在typeof(res.num)number的c ++方面做些什么?

旧版本是Qt 4.8.2

0 个答案:

没有答案