Salesforce Commerce Cloud使用什么版本的Rhino JavaScript?

时间:2019-01-29 14:45:14

标签: javascript salesforce rhino demandware

据我了解,Salesforce CommerceCloud使用Rhino JavaScript,但遗憾的是我找不到它的版本,这对于理解compatibility很重要。是否有任何描述此文档的文档,和/或是否有一种输出JavaScript引擎版本的方法?

2 个答案:

答案 0 :(得分:2)

犀牛1.7R5

有人向我指出了GitHub SFCC community docs FAQ (需要登录)的答案,该答案引用了2016年一个论坛上的官方帖子:

  

...支持的语言方言Demandware Javascript是Rhino Javascript(当前为Rhino 1.7R5版)...

答案 1 :(得分:0)

如果该产品允许您直接执行JavaScript代码,则有一些方法(除非他们以特定方式进行了配置,例如使用ClassShutter来禁止对某些Java类的脚本访问) Rhino版本。以下内容将以java.lang.String的形式返回该版本:

Packages.org.mozilla.javascript.Context.getCurrentContext().getImplementationVersion()

您可以使用String全局函数将其转换为JavaScript字符串:

var jlsVersion = Packages.org.mozilla.javascript.Context.getCurrentContext().getImplementationVersion();
var jsStringVersion = String(jlsVersion);

编辑海报指出这是一项云服务,而不是本地安装,因此js.jar不可用,并且以下方法无济于事。我将这个答案留给别人,因为它可能与其他通过搜索找到该问题的人有关。

假设他们分发了Rhino JAR文件(通常称为js.jar),您可以找到它,也可以执行它(它会输出版本并将您带到交互式JavaScript提示符)。这是我机器上(Salesforce之外)的副本:

$ java -jar js.jar
Rhino 1.7 release 3 2011 05 09
js>