[英]extracting strings from JavaScript code
在我的C ++应用程序中使用嵌入式SpiderMonkey,我想从JavaScript代码中提取所有字符串。 JavaScript代码如下所示:
var foo = "something";
var space = " ";
var bar = foo + space + "beautiful";
C ++代码如下所示:
char *script = "var foo = \"something\"; var space = \" \"; var bar = foo + space + \"beautiful\";";
ok = JS_EvaluateScript(cx, global, script, strlen(script), filename, lineno, &rval);
所以我的问题是,在SpiderMonkey执行JavaScript之后,如何从变量栏提取字符串(提取的值应该是“漂亮的东西”)并在我的常规C ++代码中使用它? 我想我必须先评估脚本,然后以某种方式从JavaScript变量中提取字符串。 我不知道如何使用SpiderMonkey提取字符串。
我的第二个问题:
http://siliconforks.com/doc/parsing-javascript-with-spidermonkey/
这个SpiderMonkey JavaScript解析器是为SpiderMonkey 1.6编写的。 由于用于解析的API已更改,如何使用最新的SpiderMonkey做到这一点?
提前Thnx,
戈兰
由于bar是全局对象的属性,因此在JS_EvaluateScript()之后,我可以使用JS_GetProperty()函数,如下所示
JS_GetProperty(cx, global, "bar", &rval);
JSString *str = JS_ValueToString(cx, rval);
printf("%s\n", JS_EncodeString(cx, str));
检查诸如subString之类的String操作函数。 它可以用来解决您的查询。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.