javascriptcore - 如何将 JSObjectRef 转换为 JSValueRef
问题描述
我在 Android 上使用JavaScriptCore C
API,我想将地图转换为JSObject
没有stringify
:
JSObjectRef json = JSObjectMake(context, nullptr, nullptr);
for (int i = 0; i < keyCount; ++i) {
std::string key = GetKeyName(keys, i);
JSObjectSetProperty(context, json, ToJSString(context, key),
ToJSValue(context, MapGetAt(handle, key)),
nullptr, nullptr);
}
但最后,我得到了 aJSObjectRef
而不是 aJSValueRef
这是唯一可以返回的类型JSObjectCallAsFunctionCallback
。我知道JSValueToObject
可以转换JSValueRef
为JSObjectRef
,有没有可以转换的函数?</p>
解决方案
重新解释演员表会帮助你。您不需要调用任何附加函数。JSObjectRef 始终是 JSValueRef。
推荐阅读
- java - 仅使用 stream() 对退出列表执行操作,不返回任何集合对象
- jasper-reports - 6.13.0 版:从 InputStream 加载对象时找不到类
- python - 如何替换 kwargs 键中的特定子字符串?
- amazon-web-services - 如何替换在我部署 Elastic Beanstalk 应用程序时不再工作的 AWS CLI 命令
- node.js - 跨服务器用户未收到 cookie 的实际值
- automation - 在stepDefinition中从功能文件创建@given @Then等时获取@create注释修复项目设置如何解决任何分辨率
- unit-testing - 在球拍中模拟依赖行为
- javascript - JS:Filter()对象数组基于对象中的嵌套数组?
- python - 如何将python脚本转换为exe构建?
- javascript - 为什么这个文件打不开?