2013-06-29 17 views
72

Oto coś prostego do sprawdzenia, czy użytkownik jest moderatorem. Ale chcę sprawdzić, czy użytkownik nie jest moderatorem.Sprawdź coffeescript, jeśli nie ma w tablicy

if err && user in moderators 
    return 

Intuicyjnie byłoby jak ten

if err && user isnt in moderators 
    return 

Ale oczywiście to nie działa. Jaki jest najlepszy sposób na zrobienie tego?

Odpowiedz

104

isnt to przeciwieństwo is, czyli znaku równości potrójnej. Tylko neguje in:

if err and user not in moderators 
    return 
+0

O tak, rzeczy mają teraz więcej sensu. – Harry

+2

Możesz także użyć "if" w postfiksowym formularzu, aby jeszcze bardziej uporządkować sprawy: 'return, jeśli err i użytkownik nie jest w moderatorze' – bilalq

11

W coffeescript, nie może być oznaczony jako! lub nie

if err && !(user in moderators) 

if err && user not in moderators 

oboje zadziałają.

+2

Chociaż może to być prawdą, Coffeescript nie jest nadzbiorem JavaScript, więc nie wszystkie JavaScript jest prawidłowy CoffeeScript. – Blender

+0

Prawda. Ale w tym przypadku myślę, że jest w porządku (czy powinienem to zmienić?) – bobbybee

+0

Usunąłbym część JavaScript. Również "not" i "!" Są równoważne w CoffeeScript. – Blender

Powiązane problemy