我有以下代碼如何將兩個數組壓縮到coffeescript中的對象中?
class A
constructor: (@message) ->
parse: (paramNames...) ->
params = @message.split(/\s/)
for value, i in params
@[paramNames[i]] = value
a = new A('foo bar dim sum')
a.parse 'first', 'second', 'third', 'fourth'
console.log a
輸出
{
message: 'foo bar dim sum',
first: 'foo',
second: 'bar',
third: 'dim',
fourth: 'sum'
}
一切正常,我只是覺得像parse
方法可以做乾淨了一點。看起來我做錯了:S
parse()
永遠不會被用戶調用;它只在我正在寫的庫內部使用。假設paramNames.length
和params.length
將總是等於是安全的。
它怎麼可能更清潔?它看起來很完美。 – McGarnagle