Esper create expression - ReferenceError: \"function\" is not defined

Esper create expression - ReferenceError: \"function\" is not defined

在另一个表达式中调用一个表达式有问题吗?因为当我这样做时:

create expression int js:hexToBin(hex) [
  var bin = '';
  for (var i = 0; i <= hex.length - 1; i += 1) {
    bin += ('0000' + parseInt(hex.substr(i, 1), 16).toString(2)).slice(-4);
  };
  parseInt(bin, 2);
];

create expression int js:getTemperature(hex) [
  hexToBin(hex.substring(4, 6));
];

我遇到错误 \"hexToBin\" 未定义。 (获取温度#2)。但是,当我将所有代码放入 getTemperature 时,它​​可以正常工作。

JavaScript 代码无法识别 EPL 表达式。研究 Rhino 是否可以知道 EPL 表达式会很有趣。

正如你在JavaScript的表达式中所说的那样,它不知道esper。

但是表达式不需要包含单个函数。它只是脚本的一些入口,因此如果您想构建代码,您可以在单个表达式中定义多个 JavaScript 函数。