我遇到了這段代碼,但是我在閱讀時遇到了麻煩,我從來沒有見過用這種方式編寫的代碼。Javascript函數寫約定
showMenuButton[isOpened ? "hide" : "show"]();
hideMenuButton[isOpened ? "show" : "hide"]();
isOpened ? container.removeClass("hideMenu") : container.addClass("hideMenu");
是不是一樣
if(isOpened="hide"){
showMenuButton();
}
else{
hideMenuButton();
}
有人能解釋代碼在做什麼,他們爲什麼寫這樣?僅僅因爲它們更短? (我從來沒有在函數調用中看到[]]。
謝謝。
這裏是完整的JavaScript代碼。
menuToggle = $("#menuToggle"),
showMenuButton = $(".menuToggle_show"),
hideMenuButton = $(".menuToggle_hide"),
toggleSideMenu = function (isOpened) {
showMenuButton[isOpened ? "hide" : "show"]();
hideMenuButton[isOpened ? "show" : "hide"]();
isOpened ? container.removeClass("hideMenu") : container.addClass("hideMenu");
}
你好,非常感謝你來清除該起來。他們是以這種方式寫作的理由嗎?似乎「if語句」更容易理解和調試。還是僅僅因爲它更短?用這種方式編寫代碼是否有任何複雜性,可能不太可能棄用,但是其他方面呢?謝謝 – hcythp