所以这就是我未压缩的样子:
function extractDropdownValues(){
var all_selected = true;
$('.variant_options select').each(function() {
if (this.selectedIndex == 0) {
all_selected = false;
}
});
这是压缩版:
extractDropdownValues(){var e=!0;$(".variant_options select").each(function(){this.selectedIndex==0&&(e=!1)});
我对if 语句e=!0
的等效all_selected = true
和压缩版本感到困惑。this.selectedIndex==0
在压缩版本中,它说if
这个索引 == 0,然后将其设置为 false。
但在压缩版本中,它看起来像是在检查 是否selectedIndex
等于 0 并且&&
(all_selected = false
即e=!1
)。但我不希望那个作为if
条件,那应该是if
条件满足后的结果。
我读错了吗?
PS 压缩版在生产中不工作,但未压缩的在开发中工作。我不确定这两者是否相关,但从表面上看,它们似乎与我并不相同。
编辑 1
正如我所怀疑的,我通过 JS 美化器运行了缩小的 JS,结果如下:
function extractDropdownValues() {
var e = !0;
$(".variant_options select").each(function () {
this.selectedIndex == 0 && (e = !1)
});
苏……啊……这里发生了WTF?