我正在创建一个时钟并尝试使用内联,这里是代码:
h == 24 ? _setWeekDay($this) && (h = 0) : h > 24 ? _setWeekDay($this) && (h -= 24): null;
但问题是当h> 24代码设置工作日,但不要减去h - = 24!你能解释一下为什么这不起作用吗?
答案 0 :(得分:1)
h == 24
? _setWeekDay($this) && (h = 0)
: h > 24
? _setWeekDay($this) && (h -= 24)
: null;
更容易拆分以提高可读性。您的问题是&&
,这不是您想要完成的任务。您正在使用三元运算符,这对于不生成如此多的if语句很有用。你需要的是:
h == 24
? (_setWeekDay($this), (h = 0))
: h > 24
? (_setWeekDay($this), (h -= 24))
: null;
这将允许您以三元条件执行多个操作。见jsfiddle