0

昨日@SuperSkunkは私にとってこの小さな問題を解決しました:オブジェクトから設定を返す方法

保存された設定から値を取得するために、次の設定を行いました。

myProject =

 settings:
  value1: one
  value2: two
  value3: three

 getSetting: (key) ->
  @settings[key]

だから私が電話するとgetSetting('value1')私は得るone

n値を取得するためにn引数を渡すようにコードを変更するにはどうすればよいですか?前もって感謝します!

4

2 に答える 2

2

スプラットとリストの内包表記を使用できます。

getSetting: (keys...) ->
   (@settings[key] for key in keys)

結果を呼び出すgetSettings 'value1', 'value2'と、配列になり['one', 'two']ます。

「そのまま戻る」とは、おそらく値を受け取ったときに単純に分解することを意味します

したがって、呼び出し側で上記の例を取り上げます

[value1, value2] = getSettings "value1", "value2"
于 2012-10-10T12:35:48.607 に答える
-1

以下を使用するには、underscore.js (http://underscorejs.org) またはコーヒー スクリプト バリアント (http://coffeescript.org/documentation/docs/underscore.html) を含めてください。

getSettings: (keys) ->
  _.map(_.flatten([keys]), (key) -> @settings(key))

上記は、渡された配列または上記の単一の値のいずれかで機能するはずです..

于 2012-10-10T12:31:26.033 に答える