是否可以在数组声明中放置 if 语句?
代码:
dayOfWeek = [if($('#sunday').checked()){$('#sunday').val()}];
Browser error: Uncaught SyntaxError: Unexpected token if.
我也尝试过:
$('#domingo').checked() ! $('#domingo').val() : 0
Browser error: Uncaught SyntaxError: Unexpected token !
编辑
@bažmegakapa 回答的没有错误的代码是:
diasSemana = new Array($domi.is(':checked') ? $domi.val() : null, $lun.is(':checked') ? $lun.val() : null);
这不起作用:
$('#domingo').checked() ? $('#domingo').val() : 0
浏览器显示此错误:未捕获类型错误:对象 [object Object] 没有“检查”方法
问候!
最佳答案
您需要的称为 ternary or conditional operator :
$('#domingo').checked() ? $('#domingo').val() : 0
但是,对于同一个元素两次查询 DOM 并不是一个好主意。预先将生成的 jQuery 对象保存到变量中并重复使用它:
var $domi = $('#domingo');
dayOfWeek = [$domi.checked() ? $domi.val() : 0];
我不知道 .checked()
是什么,也许你的意思是 .is(':checked')
。
关于JavaScript:数组声明上的 If 语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16902117/