Javascript 在dojo中创建dijit的三元逻辑
这在if/else中是相当简单的,但是,我正在尝试了解三元逻辑及其工作原理。这是我第一次尝试Javascript 在dojo中创建dijit的三元逻辑,javascript,Javascript,这在if/else中是相当简单的,但是,我正在尝试了解三元逻辑及其工作原理。这是我第一次尝试 if(condtion == true){ var showProtected = new dijit.form.CheckBox({ checked: true
if(condtion == true){
var showProtected = new dijit.form.CheckBox({
checked: true
})else{
showProtected = new dijit.form.CheckBox({
checked: false
});
});
showProtected.placeAt("showProtected", "first");
}
我累了但不工作:
showProtected = (condition == true) ? new dijit.form.CheckBox({
checked: true
}) : new dijit.form.CheckBox({
checked: false
});
showProtected.placeAt("showProtected", "first");
你可以更简单地说:
var showProtected = new dijit.form.CheckBox({
checked: (condition == true)
});
你可以更简单地说:
var showProtected = new dijit.form.CheckBox({
checked: (condition == true)
});
我这样做是徒劳的。如果(condition.Protected==true){var showProtected=new dijit.form.CheckBox({checked:(condition==true)});}我感到困惑,您想说:
var showProtected=new dijit.form.CheckBox({checked:(condition==true)})代码>我想创建一个dijit复选框,但只想在条件==true时选中它。在我看来,我认为我可以将dijit分配给一个变量,然后如果(condition==false){variable.checked=false;}但是,我遗漏了一些东西。我这样做是徒劳的。如果(condition.Protected==true){var showProtected=new dijit.form.CheckBox({checked:(condition==true)});}我感到困惑,您想说:var showProtected=new dijit.form.CheckBox({checked:(condition==true)})代码>我想创建一个dijit复选框,但只想在条件==true时选中它。在我看来,我认为我可以将dijit赋值给一个变量,然后如果(条件==false){variable.checked=false;}但是,我遗漏了一些东西。现在,如果有一种三元方法可以做到这一点,我仍然希望看到它,因为这就是这个练习的全部目的:)为什么要使用三元运算符呢?if
语句可能是最干净的方法,除非条件很小,在这种情况下,我会根据我的答案对其进行编码(这样你就不会重复代码来声明pro
)。您希望使用三元运算符的唯一实时时间是在方便将代码作为表达式编写时,例如var pro=(condition)?x:y
。如果有一种三元方法可以实现这一点,我仍然希望看到它,因为这是本练习的全部目的:)但是,为什么要使用三元运算符?if
语句可能是最干净的方法,除非条件很小,在这种情况下,我会根据我的答案对其进行编码(这样你就不会重复代码来声明pro
)。您希望使用三元运算符的唯一实时时间是在方便将代码作为表达式编写时,例如var pro=(condition)?x:y代码>。