2013-01-11 16 views

Odpowiedz

23

Nie sądzę, nie ma, ale może być:

Array::present = -> 
    @.length > 0 

if [42].present() 
    # why yes of course 
else 
    # oh noes 

bardzo prostą i niepełną implementację ale powinna dać ci kilka pomysłów. I dla zapisu, nie ma metody w Ruby, metoda jest dodana przez klejnot active_support.

+0

dzięki, nie zdawałem sobie sprawy, że 'obecny?' Jest metoda gem – mirelon

+3

Dla jasności chciałbym przejść do 'pusty()' (jak 'pusty?' W Ruby). Nieco mniej wątpliwe IMHO. – Cimm

+0

@ Cimm Myślę, że obie są metodami w klasie Array Ruby i obie są wspólne z tego, co widziałem. – Vortico

6

Niestety, nie ma. Najlepszym sposobem na to jest porównanie jego długości.

1

Myślę, że przy użyciu in działa również.

arr = [1, 2, 3, 4, 5] 
a = 1 
if a in arr 
    console.log 'present' 
else 
    console.log 'not present' 

Output 
$ present 
Powiązane problemy