私はCoffee Scriptにコードのこの部分を持っています.3進数のifまたはこのようなものでどのように単純化できるかわかりません..
if options.tracks?
@collection.add(options.tracks, {at: length+1, dest:options.dest})
else
@collection.add(options, {at: length+1, dest:options.dest})
くだらない質問ですみません..
私はCoffee Scriptにコードのこの部分を持っています.3進数のifまたはこのようなものでどのように単純化できるかわかりません..
if options.tracks?
@collection.add(options.tracks, {at: length+1, dest:options.dest})
else
@collection.add(options, {at: length+1, dest:options.dest})
くだらない質問ですみません..
CoffeeScript には簡単な 10 項演算子はありませんが、どちらかの分岐の最後の式を生成する if を使用できます
@collection.add((if options.tracks then options.tracks else options),
{at: length+1, dest:options.dest})
そうは言っても。視覚的なノイズが多くて読みにくいので、そのようには書きません。したほうがいい
tracks = if options.tracks then options.tracks else options
@collection.add(tracks, {at: length+1, dest:options.dest})
またはさらに良い
tracks = options.tracks || options
@collection.add(tracks, {at: length+1, dest:options.dest})
存在演算子を使用すると、コードと同じ動作が得られます。
@collection.add(options.tracks ? options, {at: length + 1, dest: options.dest})
私は個人的にいくつかの括弧/中括弧を取り除き、最初のパラメーターに別の変数を使用するかもしれません...しかし、これは本当に個人的な好みに関するものです:
tracks = options.tracks ? options
@collection.add tracks, at: length + 1, dest: options.dest