Heh, there are some pretty exciting uses of ternary syntax in your question; I like the last one the best…
x = (1 < 2) ? true : false;
The use of ternary here is totally unnecessary – you could simply write
x = (1 < 2);
Likewise, the condition element of a ternary statement is always evaluated as a Boolean value, and therefore you can express:
(IsChecked == true) ? removeItem($this) : addItem($this);
Simply as:
(IsChecked) ? removeItem($this) : addItem($this);
In fact, I would also remove the IsChecked
temporary as well which leaves you with:
($this.hasClass("IsChecked")) ? removeItem($this) : addItem($this);
As for whether this is acceptable syntax, it sure is! It’s a great way to reduce four lines of code into one without impacting readability. The only word of advice I would give you is to avoid nesting multiple ternary statements on the same line (that way lies madness!)