问题标签 [spidermonkey]
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 - Spidermonkey 中的 JSON 序列化
我python-spidermonkey
用来运行 JavaScript 代码。
为了将对象(而不仅仅是字符串)传递给 Python,我正在考虑返回一个 JSON 字符串。
这似乎是一个常见问题,所以我想知道 Spidermonkey 或python-spidermonkey
. (我确实知道,uneval
但这并不意味着用于 JSON 序列化 - 我宁愿避免注入一段 JavaScript 来执行此操作。)
javascript - Spidermonkey 中的文件 I/O
感谢python-spidermonkey
,使用 Python 中的 JavaScript 代码非常容易。
但是,不是使用 Python 从文件中读取 JS 代码并将字符串传递给 Spidermonkey,有没有办法从 Spidermonkey 中读取文件(或将文件路径作为参数传递,如在 Rhino 中)?
javascript - 在 Gedit 中缩小 JavaScript 时出现命令行 JavaScript 输入参数问题
我想立即在 Gedit 中缩小我的 JavaScript 文件。我尝试通过带有jsmin.js脚本的外部工具选项来做到这一点。我安装了 SpiderMonkey 引擎。我将jsmin.js文件存储在/home/mushex/use/js/jsmin.js并在同一目录中创建了一个名为jsmin-low.js的新 js 文件,其中包含内容
它打印出未定义的。为了调试,我将脚本更改为仅在参数打印操作中执行,并看到输入为空(未定义)。调试文件的来源是
但是当我在命令行中运行它时,它的输出是正确的。并且通过 gedit 其他 js 命令行工具工作正常。徘徊为什么我的输入参数不通过。
这是我在 gedit 中为此工具设置的设置。
设置 http://imagebin.org/index.php?mode=image&id=63960
任何帮助将不胜感激谢谢。
spidermonkey - 蜘蛛猴壳。如何更改源代码的编码?
如果我输入
在 中smjs
,它会打印 2。如果我输入javascript:alert("®".length)
我的 firefox 和 opera,它会打印 1。Rhino 也会打印 1。是否可以告诉 smjs 我想将这些字符视为单个字符?操作系统:linux(Ubuntu 9.04),语言环境:UTF-8。
javascript - 如何将远程 javascript 加载到 SpiderMonkey 上下文中?
我有一个服务器,它将提供 javascript 文件,我需要抓住它并在 python 中使用 SpiderMonkey 执行它的一些功能。我怎样才能做到这一点?
javascript - JavaScript `var` 关键字的混淆操作
我遇到了一个非常奇怪的(对我来说)var
关键字问题。我已将它缩减为一个相当小的测试用例,并发现它在 Node.js(因此是 V8 和 Chrome)、Safari 4 的检查器(因此是 Nitro)和 FireBug(显然是 SpiderMonkey)中都有展示。我最初是在准备一份错误报告,但由于它的展示如此广泛,我将假设我完全误解了 JavaScript 应该如何界定和查找变量。
测试用例非常小,在 GitHub 上:http: //gist.github.com/260067。第一个示例和第二个示例之间的唯一区别是包含var
关键字。
这里也是一个类似的测试用例,它以不同的方式展示了相同的“问题”:https ://gist.github.com/698b977ee0de2f0ee54a
编辑:为了排除任何试图解释级联作用域如何工作的答案,我对此非常熟悉。我的问题是我不明白为什么以下代码“有效”(因为它alert()
是“外部”,然后是“内部”,然后是“外部”):
var foo;
发生在与重新分配完全无关的位置foo
;那么为什么它会以非常重要的方式影响这项任务呢?
javascript - DOM 与 SpiderMonkey 一起使用?
我正在尝试使用 python 包装器从 SpiderMonkey 内部使用 GoogleMaps JavaScript 库,但由于缺少 DOM 我不能。
有什么方法可以将 DOM 集成到其中,以便我可以让它工作吗?
javascript - 是否可以增加 SpiderMonkey 中的递归限制?
我目前正在使用 JavaScript解决Project Euler中的问题。在大多数情况下,我一直在使用for
循环来遍历问题,但想使用递归函数。然而,似乎所有的 JavaScript 引擎都限制了它们可以处理的递归量。
我编译/安装了SpiderMonkey以尝试从 shell 运行,但仍然得到18: InternalError: too much recursion
无论如何增加 SpiderMonkey 中的递归限制,或者这只是一个坏主意。
代码示例:
谢谢你的帮助。
javascript - Javascript 引擎的优势
我现在对 JavaScript 引擎感到困惑。我知道V8很重要,因为它将 JavaScript 编译为本机代码。
然后我开始阅读有关Mozilla SpiderMonkey的信息,据我了解,它是用 C 语言编写的,可以编译 JavaScript。那么这与 V8 有何不同,如果这是真的,为什么 Firefox 不这样做呢?
最后,Rhino是否真的将 JavaScript 编译为 Java 字节码,以便您获得 Java 的所有速度优势?如果不是,为什么人们在桌面上编写脚本时不运行 V8?
python - Python, mongo + 蜘蛛猴
好的,所以这不是一个我期望得到完整答案的问题,但这里......
我目前正在使用 python 驱动程序在 mongo 实例上触发数据,并且在世界上一切都很好。现在我希望能够从 mongo 中提取数据并评估集合中的每条记录。现在我需要将一个脚本传递给这个评估,该脚本将查看数据行,如果满足条件,则返回 true,即
(伪代码)
现在,我用来评估行中每个项目的脚本应该是具有有限功能/安全权限的沙箱。
换句话说,代码将被评估,我不希望它有权包括外部库、调用远程服务器或访问服务器上的任何文件等......
考虑到这一点,我知道 mongo 使用一种叫做蜘蛛猴的东西(我收集它是一个 JS 评估器)来编写查询。我想知道是否有可能获取 mongo 调用的结果并将其传递给使用蜘蛛猴(以某种方式)评估的 javascript 函数来实现我所追求的?如果是这样,这是否足够安全。
老实说,我在写这个问题,我意识到它听起来很像那些“请帮助,如何编码世界”类型的问题,但任何指针都会有所帮助。