我正在使用 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);
}