BIRT报告中的这个JavaScript表达是什么意思?

时间:2015-04-20 19:36:52

标签: javascript report expression birt semantics

我正在处理BIRT报告,其中一个字段包含以下表达式:

dataSetRow["user_id"] != dataSetRow["creatorId"] ? dataSetRow["orderCreator"] : ''

这句话的逻辑是什么?

1 个答案:

答案 0 :(得分:2)

该陈述等同于下面的代码,称为“三元”运算符:

var value;

if(dataSetRow["creatorId"]){
    value = dataSetRow["orderCreator"];
}
else{
    value = '';
}

//To be clear, this isn't assigning to anything - this is the same expression you have in your question.
dataSetRow["user_id"] != value

您可以在if块中使用该表达式,该表达式返回一个布尔值,例如:

if(dataSetRow["user_id"] != value){
    //Do something
}