xpage/javascript 变量赋值中的奇怪行为

Weird behavior in xpage/javascript variable assignment

我有这种奇怪的行为,我不确定是我没有误解变量还是 xpage 问题

我有一个文档,其中包含一个名为 "hours" 的字段,它的值为 8。 这是我的简化代码。

var xHrs = doc.getItemValueDouble('hours');
println (xHrs);  // at this point, hours is 8
doc.replaceItemValue('hours', 0);
return xHrs;  // returns 0;

为什么我将文档值替换为0时,xHrs又回到了0?如何打破 link?

在此先感谢您的帮助:)

R.

我怀疑像您那样设置 xHrs 变量会创建一个函数表达式,该表达式 returns 'hours' 字段的值。您更改字段的值和函数 returns 的新值。

我不确定是否可以有效地打破链条,但也许您可以创建第二个变量来保存 xHrs 值?

有可能代码被执行了不止一次。

尝试用 ${javascript: 而不是 #{javascript:

包装代码
${javascript: 
var xHrs = doc.getItemValueDouble('hours');
doc.replaceItemValue('hours', 0);
return xHrs;  
}

前面的$.

代码只会执行一次