如何缩短 jQuery 语法 if-else 语句

how to shorten jquery syntax if-else statement?

本文关键字:if-else 语句 语法 jQuery 何缩短      更新时间:2023-09-26

我正在使用很多这些:

$text = $menu.jqmData('menu-text') ? 
           $menu.jqmData('menu-text') : self.options.menuTxt;

它已经是"速记"语法,但我想知道是否有可能进一步减少上述行。一定有比检查$menu.jqmData('menu-text')然后再次编写整个内容更好的方法。不是吗?

感谢您的帮助!

较短的方法是使用双管道。如果第一个值falsy,它基本上使用第二个值。

$text = $menu.jqmData('menu-text') || self.options.menuTxt;

您也可以在同一行中多次使用它。假设您有一个变量uberMenuTxt它优先于其他两个,您可以这样做。

$text = uberMenuTxt || $menu.jqmData('menu-text') || self.options.menuTxt;

它基本上每次falsy当前值时都会继续运行,并将在第一个不是当前值时停止。