【发布时间】:2012-12-20 07:55:59
【问题描述】:
我有一个这样的数组:
@items = [
{price: 12, quantity:1},
{price: 4, quantity:1},
{price: 8, quantity:1}
]
我正在寻找这样的东西:
sumPrice: ->
@items.sum (item) -> item.price * item.quantity
或尽可能接近此的任何内容,这使得每个阅读代码的人都可以非常轻松地了解正在发生的事情。
到目前为止,我想出了:
sumPrice: ->
(items.map (a) -> a.price * a.quantity).reduce (a, b) -> a + b
- 包含过多的功能魔法
- 失去描述性
还有:
sumPrice: ->
sum = 0
for item in items
sum += item.price * item.quantity
sum
- JS/Coffee程序员新手都能理解
- 感觉有点傻
我喜欢 CoffeeScript,所以我希望有一个更好的解决方案来解决我想念的类似场景。
【问题讨论】:
标签: coffeescript