Pad*_*ter 0 javascript jquery ternary-operator
如何以三元方式转换下面的代码?
if(epaper.othermakemodel.is(':checked')){
$("#dcolor").insertAfter("#lmodel");
}else{
$("#dcolor").insertBefore("#otherlabeldiv");
}
Run Code Online (Sandbox Code Playgroud)
这可行:
var c = epaper.othermakemodel.is(':checked');
$("#dcolor")["insert" + (c ? "After" : "Before")](c ? "#lmodel" : "#otherlabeldiv");
Run Code Online (Sandbox Code Playgroud)
甚至是单行:
$("#dcolor")["insert" + (epaper.othermakemodel.is(':checked') ? "After" : "Before")](epaper.othermakemodel.is(':checked') ? "#lmodel" : "#otherlabeldiv");
Run Code Online (Sandbox Code Playgroud)
但是,为了使用运算符,这只是使用三元运算符.
保持代码简短,但更重要的是,保持代码可读:
var element = $("#dcolor");
if(epaper.othermakemodel.is(':checked')){
element.insertAfter("#lmodel");
}else{
element.insertBefore("#otherlabeldiv");
}
Run Code Online (Sandbox Code Playgroud)
如果您必须在一年后维护代码,这将使每个人都头疼.
归档时间: |
|
查看次数: |
71 次 |
最近记录: |