本人菜鸟...之前没特意研究过函数式编程
最近再做一个三消游戏,写了一点 Ramda ,我发现一个问题
下面这段大概意思是根据 row.length 判断当前这个格子需不需要填充砖块,根据结果返回砖块值或 null
最后 prepend 到 map 里
compose(
prepend,
ifElse(identity<boolean>, brickSample, always(null)),
shouldFill
)(row.length)(row),
问题是我写了很多经常出现(arg)(map)这样的代码
直觉这样写不对,因为我看别人的代码没有这么写过,也许根据入参获取砖块值是一个流程,prepend 到地图里是另外一个流程
就又改成这样了:
prepend(
compose(
ifElse(identity<boolean>, brickSample, always(null)),
shouldFill
)(row.length),
row
),
但是还是感觉很乱,有更好看的写法吗?
