只是想知道!!Ruby中有什么。
什么!在紅寶石中意味著什么?
慕無(wú)忌1623718
2019-10-17 10:32:32
TA貢獻(xiàn)1777條經(jīng)驗(yàn) 獲得超3個(gè)贊
不是這樣的。它用于將值轉(zhuǎn)換為布爾值:
!!nil #=> false
!!"abc" #=> true
!!false #=> false
盡管通常不需要使用,因?yàn)镽uby唯一的錯(cuò)誤值是niland false,因此通常最好讓該約定成立。
認(rèn)為是
!(!some_val)
合法使用的一件事是防止返回大量數(shù)據(jù)。例如,您可能不想在您的has_image?方法中返回3MB的圖像數(shù)據(jù),或者您可能不想在logged_in?方法中返回整個(gè)用戶對(duì)象。使用!!將這些對(duì)象轉(zhuǎn)換為簡(jiǎn)單的true/ false。
TA貢獻(xiàn)1841條經(jīng)驗(yàn) 獲得超3個(gè)贊
true如果右邊的對(duì)象不是nil和不是false,false則返回,如果是nil或,則返回false
def logged_in?
!!@current_user
end
舉報(bào)