1

嗨希望有人可以提供帮助。

我在 excel 电子表格中有以下公式。它计算T40 和 AB40之间的差值,如果返回负值,则重新计算AB40 - T40以返回正值。

=IF(T40 > AB40, + T40 - AB40, AB40 - T40)

我已将电子表格导入 PDF 文档,但找不到与上面匹配的等效 java 脚本。

任何人都可以提供帮助,我现在很绝望,急需这些信息。

4

3 回答 3

1

你不需要一个 if 语句,你可以这样做:

Math.abs(T40-AB40)

为了澄清这将返回数学运算的绝对值,因此:

Math.abs(10 - 2) //returns 8

Math.abs(2 - 10) //returns 8 
于 2012-12-04T13:33:57.313 回答
0

如果不熟悉 pdf 中 javascript 的细节,但这样的东西应该可以工作:

if(T40>AB40){
    return T40-AB40;
}else{
    return AB40-T40;
}

或使用建议的 user1161318 之类的三元运算符。

于 2012-12-04T13:28:51.850 回答
0

正如另一个响应所示,它可以用 if 来完成,但如果你想把它当作一个表达式,你可以这样做:

T40 > AB40 ? T40-AB40 : AB40-T40;

在 Javascript 中:

cond ? ifTrue : ifFalse

是构成 if 语句的另一种方式,它允许将整个事物视为表达式,因此成为公式的一部分,分配给变量,放入函数的参数列表等......与 if 不同。因此,执行以下操作是完全合法的:

alert( cond ? ifTrue : ifFalse );
var x = cond ? ifTrue : ifFalse;

等等,而你不能用 if 块来做到这一点。当然,如果有任何歧义的可能性,请将表达式包含在括号中(例如:它是更大公式的一部分,等等......)

我认为这更接近于在 Excel 中保留 IF 的含义。

于 2012-12-04T13:32:09.323 回答