我正在使用 jQuery 1.7.1
我刚刚开始使用 JavaScript 三元运算符来替换简单的 if/else 语句。我已经在几个地方成功地做到了。当我成功地让其他东西工作时,我感到很惊讶,而我认为它肯定不会,但我还是尝试了。
这是原始声明:
function updateItem() {
$this = $(this);
var IsChecked = $this.hasClass("IsChecked");
if (IsChecked == true){
removeItem($this);
} else {
addItem($this);
}
}
这是使用三元运算符的相同函数:
function updateItem() {
$this = $(this);
var IsChecked = $this.hasClass("IsChecked");
(IsChecked == true) ? removeItem($this) : addItem($this);
}
我很惊讶,因为我看到的所有示例都只是设置如下变量:
x = (1 < 2) ? true : false;
我的问题是这是否是“正常”使用,它是否适用于大多数版本的 JavaScript?它会在哪里失败?它还有其他不太明显的用途吗?
更新——感谢“现实世界”的建议!!!
我将其用作我的功能:
function updateItem() {
$this = $(this);
$this.hasClass("IsChecked") ? removeItem($this) : addItem($this);
}