Ich muss einen Wert festlegen a
, der von einer Bedingung abhängt.
Was ist der kürzeste Weg, dies mit CoffeeScript zu tun?
So würde ich es beispielsweise in JavaScript machen:
a = true ? 5 : 10 # => a = 5
a = false ? 5 : 10 # => a = 10
a = true ? 5 : 10
es sich um gültiges Kaffeeskript handelt, aber keine ternäre Struktur bedeutet, sondern (in Javascript) bedeutet: a = true ? true : {5:10}
was als schlechte Sache bekannt ist® Zusätzlich ist es dann a = false ? {5 : 10}
in Coffeescript (in Javascript) Äquivalent zu: a = true ? false : {5:10}
Für das, was es wert ist, finde ich es nicht gut.
beast = yeti ? "bear"
oder if yeti? then alert "It's a yeti!"
macht das ?
ganz gut.
if/then/else
bereits ein Ausdruck ist und dasselbe tut. Wenn Sie es wirklich vermissen, sind Sie eher an die C- oder JavaScript-Syntax gewöhnt, als dass Sie es wirklich brauchen. Wenn es nicht lesbar genug ist und es manchmal vorkommt, setzen Sie einfach den gesamten Ausdruck in Klammern. Der Operator ?
wurde von nützlicheren Überprüfungen verschont, die in JavaScript fehlen, wie bereits von @PaulOliver angegeben. Existenzieller Operator ist der beste.
if else then
</ rant>