对不起JS新手在这里:
if (message.notify_one_day_out){
$("#data\\[User\\]\\[notify_one_day_out\\]").val("1");
}
else{
$("#data\\[User\\]\\[notify_one_day_out\\]").val("0");
}
上面的代码感觉很草率。我怎么能压缩它?我知道这是发展基础,但我可以这样做:
$("#data\\[User\\]\\[notify_one_day_out\\]").val(message.notify_one_day_out);
答案 0 :(得分:5)
//this is actually a function call "$()" better reference it to avoid overhead
var el = $("#data\\[User\\]\\[notify_one_day_out\\]");
el.val( message.notify_one_day_out ? '1' : '0');
我建议你将那些[]
变成破折号或下划线。这样就不会那么乱了。
答案 1 :(得分:0)
$("#data\\[User\\]\\[notify_one_day_out\\]").val(
message.notify_one_day_out ? "1" : "0");
答案 2 :(得分:0)
您可以使用三元运算符(也称为条件运算符):
$("#data\\[User\\]\\[notify_one_day_out\\]").val(
message.notify_one_day_out ? '1' : '0' );
这是三元运算符的原型:
(expression) ? this if true : this if false;
基本上它是if-else
陈述的简写。
您可以在此处详细了解:
答案 3 :(得分:0)
您可以使用ternary operator。
$("#data\\[User\\]\\[notify_one_day_out\\]").val(message.notify_one_day_out ? "1" : "0");