Mam ten kod, który sprawdza pusty lub pusty ciąg. Działa na testach.
eitherStringEmpty= (email, password) ->
emailEmpty = not email? or email is ''
passwordEmpty = not password? or password is ''
eitherEmpty = emailEmpty || passwordEmpty
test1 = eitherStringEmpty "A", "B" # expect false
test2 = eitherStringEmpty "", "b" # expect true
test3 = eitherStringEmpty "", "" # expect true
alert "test1: #{test1} test2: #{test2} test3: #{test3}"
Zastanawiam się, czy istnieje lepszy sposób niż not email? or email is ''
. Czy mogę wykonać odpowiednik C # string.IsNullOrEmpty(arg)
w CoffeeScript za pomocą jednego wywołania? Zawsze mógłbym zdefiniować dla niego funkcję (tak jak zrobiłem), ale zastanawiam się, czy jest coś w języku, którego mi brakuje.
!!
wersji, która jest powszechnym sposobem rzutowania na wartość logiczną. Jeśli ma to znaczenie, jest to prawie na pewno szybsze niż definiowanie funkcji, jak zasugerował Jeremy.