CoffeeScript verwandelt user?.id
in
Ist es möglich, eine JavaScript-Funktion exists
zu erstellen, die etwas ähnliches tun würde? d. h.
würde entweder user.id
oder null
Es wäre einfacher, wenn eine Funktion einen anderen Parameter akzeptiert, d. h. exists(user, 'id')
, aber das würde nicht so gut aussehen.
Nein, Sie können eine solche Funktion nicht erzeugen. Das Problem ist, dass dies:
%Vor% erzeugt einen ReferenceError, wenn undeclared_variable
nirgendwo deklariert wurde. Wenn Sie beispielsweise diesen Standalone-Code ausführen:
Sie erhalten einen ReferenceError, weil pancakes
nirgendwo deklariert wurde. Demo: Ссылка
Der Operator typeof
kann jedoch verwendet werden etwas, das nicht so erklärt wurde:
protokolliert einfach ein undefined
in der Konsole. Demo: Ссылка
Wenn es Ihnen mögliche ReferenceErrors nicht stört, haben Sie bereits die notwendige Funktion in Ihrer Frage:
%Vor% oder, da Sie typeof
für nicht deklarierte Variablen hier nicht verwenden können, können Sie dies vereinfachen:
Beachten Sie, dass die Änderung in !=
, undefined == null
wahr ist, obwohl undefined === null
nicht lautet.
Tags und Links javascript coffeescript