我是CoffeeScript
的新手(我今天早上开始学习),我唯一无法找到的是在子阵列中拆分数组的优雅方法。例如,我有以下数组:
myarr = [1, 7, 8, 3, 5, 1, 4, 9, 0, 2]
我想把它分成两个元素的子阵列:
myarr = [[1, 7], [8, 3], [5, 1], [4, 9], [0, 2]]
我知道如何用纯javascript
来做,然而鉴于我正在学习,我无法找到一种优雅的咖啡方式。 CoffeeScript
是否允许一个很好的解决方案呢?
更新
使用http://js2coffee.org/网站将我的javascript代码翻译为CoffeScript我找到了这个解决方案:
Array::chunk = (chunkSize) ->
array = this
[].concat.apply [], @map((elem, i) ->
(if i % chunkSize then [] else [array.slice(i, i + chunkSize)])
)
看起来很正确。但这是一个翻译输出,而不是专家推荐。
声明:
即使CoffeeScript编译为Javascript,我也在寻找CoffeeScript解决方案而不是Javascript解决方案。 “如果你知道javascript那么,你知道coffeescript”的想法对我来说不是真的,至少现在还没有。