DEV Community

Discussion on: Idiomatic Ruby: writing beautiful code

Collapse
 
sbaron24 profile image
sbaron24

Thanks for the post! In the following example under Select...

even_numbers = [1, 2, 3, 4, 5].map { |element| element if element.even? } # [ni, 2, nil, 4, nil]
even_numbers = even_numbers.compact # [2, 4]

...I noticed that after the first line, even_numbers is:

[nil, 2, nil, 4]`

Why does element if element.even? return nil when element.even? is false?

~s