Ruby on Rails에 nil, empty, black의 차이점이 알고싶어요


Ruby on Rails에 nil, empty, black의 차이점을 보고 있습니다.

이때까지 알아낸건

  • blank? : 객체가 false/empty/공백문자인 경우. ("", " ", nil, [], {} 등)
  • nil? : 객체가 NilClass의 instance
  • empty? : class마다 다름. string은 character가 없는 경우, 리스트는 item이 없는 경우

이 외에 더 추가해야 할 게 있을까요?

  • 2016년 02월 23일에 작성됨

조회수 195


1 답변


좋아요
0
싫어요
채택취소하기
  • .nil? : 어떤 객체에서간에 쓸 수 있고, 객체가 nil일 때 true

  • .empty? : string, array, hash에서 쓸 수 있고 각각 다음의 경우 true
    • String length == 0
    • Array length == 0
    • Hash length == 0
    • nil.empty?를 쓰면 NoMethodError가 throw됨

  • .blank? : 다음의 경우 true.
    • nil.blank? == true
    • false.blank? == true
    • [].blank? == true
    • {}.blank? == true
    • "".blank? == true
    • " ".blank? == true
    • 5.blank? == false
    • 0.blank? == false
    • .blank?의 반대는.present?`
  • 2016년 02월 23일에 작성됨

로그인이 필요한 기능입니다.

Hashcode는 개발자들을 위한 무료 QnA사이트 입니다. 작성한 답변에 다른 개발자들이 댓글을 작성하거나 좋아요/싫어요를 할 수 있기 때문에 계정을 필요로 합니다.
► 로그인
► 계정만들기
Close