wso2 - WSO2 脚本调解器将整数显示为浮点数
问题描述
我正在尝试在脚本调解器内读取 INTEGER 类型的属性调解器的值,并尝试进行一些算术运算。下面是相应的代码片段。
<property expression="$trp:RETRY_COUNT" name="RETRY_COUNT"
scope="default" type="INTEGER"
xmlns:ns="http://org.apache.synapse/xsd" />
<script language="js"><![CDATA[
var retry_count_from_header = mc.getProperty('RETRY_COUNT');
var counter = 1 ;
if(retry_count_from_header >= 0){
retryCountIncremented = (Number(retry_count_from_header) + counter);
}
]]></script>
“counter”变量的值被评估为 1.0 而不是 1。因此“ retryCountIncremented ”的值始终是一个浮点数。
也厌倦了使用 Math.trunc() 函数,但使用 Math 函数但收到错误“TypeError:无法在对象 [object Math] 中找到函数 trunc”
如何删除十进制数。我期望计数器为不带小数点的整数。还有为什么变量总是被评估为 float ?
谢谢。
解决方案
您可以像这样使用 nashornJs 而不是 js:<script language="nashornJs">
推荐阅读
- flutter - Flutter:如何在屏幕之间保持 ListView 滚动位置
- pandas - 熊猫读取 20 位数字与 csv 文件中的数字不同
- apache-spark - sparksession 在 sparkstreaming 操作中无法连接到 hive
- c# - 十六进制到 int 和返回给出不同的结果
- qt - qt QML 可折叠嵌套 ListView 与 PropertyAnimation
- rust - 使用“Serde”反序列化时可以映射类型吗?
- javascript - 离子 - 反应如何重复组件
- list - 删除列表中两次出现之间的元素
- flutter - 如何在同一个项目中同时使用“Image_picker”和“shared_preferences”
- c - 未定义对函数错误“链表”的引用,C