问题标签 [javascriptcore]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - JavaScriptCore 可移植性
我正在考虑在应用程序中嵌入 JavaScriptCore。我很好奇它的便携性如何?理想情况下,我希望它能够在 Linux、Windows 和 OSX 以及 Android 和 iOS 上运行。自然 OSX 和 iOS 应该没有问题,那剩下的呢?
javascript - 在 JavaScriptCore 中的全局对象上公开字符串
我用 JavaScript 编写了一个可移植的框架,我想在各种 JavaScript 解释器 shell 环境下运行一些性能测试。为了实现这一点,我需要能够将命令行参数 (argv) 传递给脚本上下文。默认情况下,Rhino 和 Spidermonkey 解释器已经这样做了,将脚本文件之后的所有参数公开为绑定到全局对象上的“参数”标识符的数组。最初我打算为 v8 示例 shell 以及 JavaScriptCore jsc shell 带来相同的功能,但我很快意识到这需要更多的努力,而且我真的只需要最后一个命令行参数即可运行我的测试。因此,我已经能够在 v8 中使用它,将 argv 中的最后一个 char* 元素转换为 v8::
不幸的是,我在用 JavaScriptCore 完成同样的事情时遇到了更多的麻烦。我找不到太多关于 JavaScriptCore C++ API 的文档,而且 JavaScriptCore jsc 解释器(在Source/JavaScriptCore/jsc.cpp 中)中的代码比 v8 示例 shell 中的代码更难理解。
具体来说,我会感谢任何可以帮助说明以下任务的资源(文档、教程、示例代码等):
- 从 char* 创建一个新的 JavaScriptCore JSString 实例
- 将 JSString 实例绑定到 GlobalObject 全局对象实例上的标识符。
我打算简单地修补 jsc.cpp 的函数 jscmain:
我非常感谢任何人可以提供的任何指导。
c++ - 回调需要const函数,如何传递对象的实例成员
我在更大的 GTKmm/C++ 应用程序中使用 WebKitGTK+。我正在使用 JavaScriptCore 与其中的 WebKitWebFrame 和 JSContext 进行交互。
我现在卡住了,因为在调用 javascript 函数时我需要与 GTK GUI 组件进行交互。为此我找到了JSObjectMakeFunctionWithCallback函数。
回调必须定义为带有 def 的静态函数:
所以一切正常,除了我需要回调中的对象实例来返回我需要操作的 GUI 组件。
关于 SO 有很多类似的问题,但大多数集中在将对象实例传递给回调。我看不到使用此 API 的方法。
有任何想法吗?
javascript - 如何列出以_func开头的所有javascript函数
是否可以在数组中列出/返回我自己的 .js 文件中以字符串“_func”开头的所有 javascript 函数?
在 WebKit 的 JSCore 中完成。
基本上,如果我的文件有一堆函数,我该如何枚举这些函数?
html - 是否有在 V8 或 Rhino 而不是 JavaScriptCore 上运行的 HTML5 桌面应用程序框架(如 Titanium 或 Adobe AIR)?
我们的产品是一个桌面应用程序,由大量 HTML5 和 JavaScript 以及一个特定于平台的薄层组成,该层基本上是一个 WebKit 外壳。由于这与Appcelerator Titanium等框架的策略大致相同,而且我们在这个自定义的 WebKit shell 代码上浪费了太多精力,我们希望切换到 Titanium 或类似的框架来为我们处理。
但是,如果我们可以在此过程中选择一个不错的现代 JavaScript 引擎,那么这样的转换会更加引人注目。和 Titanium 一样,我们目前正在使用 JavaScriptCore,这很糟糕(他们仍然没有Function.prototype.bind
!)。我们将采用 V8 来获得速度和现代性,或者采用 Rhino 来获得美味的 JavaScript 1.7/ECMAScript Harmony特性。
有谁知道使用这些引擎中的任何一个使用 HTML5 构建桌面应用程序的框架?或者通过某种方式让 Titanium 可以轻松工作?我在 GitHub 上看到了v8_titanium和rhino_titanium项目,但在其他任何地方都没有提到它们,也没有任何关于如何使用它们的文档。Adobe AIR WebKit 页面也没有什么令人鼓舞的地方。
javascript - 如何使用 JavaScriptCore 框架执行 JavaScript?
我已经实现了以下代码来执行Jasmine 测试框架的 JavaScript 文件。
这是我的函数,它返回 HTML 数据......当我执行脚本时,我在异常处收到以下错误:
虽然我的脚本jasmine
在第一行声明了变量。上面的代码还有什么问题???他们还有其他执行 JavaScript 的方式吗?
还有一个问题:JavaScriptCore 框架是否支持 DOM 和 HTML 的其他功能?
build - Create static build of jsc/webkit in order to run on old machine
I'm doing performance-testing research of different JavaScript interpreters on a cluster of old Fedora machines. node/v8, rhino, and spidermonkey shells all work fine on these machines, but JavaScriptCore (jsc), which I have been able to build on my recent Ubuntu box, is missing a shared library dependency (error while loading shared libraries: libicui18n.so.44: cannot open shared object file: No such file or directory
). I'd therefore like to create a static build of jsc with all dependent libraries compiled in so that I can run it on these old machines. I'm wondering if there's a way to create a static build of webkit, or just jsc, so that I can run jsc on these old machines?
javascript - 如何从 webkit 的 javascript 中获取 javascript 新对象信息?
我想将新的对象信息名称和参数提取到 HTML 页面中。如
我需要打印:
带有参数 10,20 的新对象 g
我是 Webkit 的新手。最初我想只是在 javascriptcore 中添加一个 printf 语句。我在 JavaScriptCore/runtime/FunctionConstructor.cpp ,ObjectConstructor.cpp 添加了一些 printf 语句。
但没有得到正确的结果。
我用谷歌搜索,但关于 javascriptcore 的教程很少。我希望一些专家能指出我正确的方向。
javascript - 从 WebKit / JavaScriptCore 中的 Javascript 获取返回值
我正在使用 JavaScriptCore API 来获取 Javascript 的全局上下文。我希望能够在 C 中操纵从 Javascript 中返回的值。这是我拥有的相关代码示例:
ReturnOne() 是一个 JavaScript 函数,如下所示:
当我在函数中添加警报时,它会显示,因此我知道该函数被正确调用。我试图简单地打印出数字 1 但我得到了一个很大的负值。我没有正确解释 JSValueToNumber 吗?
任何意见,将不胜感激。谢谢。
编辑:我做了一些挖掘并找到了这个宝石 - https://lists.webkit.org/pipermail/webkit-help/2011-January/001849.html
不幸的是,我以这种方式实现我的 C 代码得到了相同的结果。我在 Javascript 中的函数返回一个原语,我想将该 Javascript 原语转换为我期望的值(在本例中为 1)。
我也可以选择从 Javascript 返回对象的替代方案,只要我能得到我期望的数值。
c - 在 C 应用程序中嵌入 JavascriptCore
我正在尝试查找有关如何在 C 项目中嵌入 JavascriptCore 的信息。很容易找到 V8 和 SpiderMonkey 的指南,但几乎不可能找到 JSC。有谁知道在哪里看?
我宁愿不嵌入 V8,因为它是 C++,而且我听说 SpiderMonkey 的 API 很糟糕。