我确信它就在我面前,但我很想念它。检查以下内容:
(assoc :position entity
(add (:position entity) (:velocity entity)))
我想做的是这样的事情(使用名为altermap的假函数):
(altermap :position entity #((add % (:velocity entity)))
建议的方法是什么?是否有内置功能来做#2?
答案 0 :(得分:23)
update-in
几乎与您的altermap
函数完全相同,只是它需要一个键向量而不是一个键。所以:
(update-in entity [:position] #(add % (:velocity entity)))
据我所知,update-in
没有单键变体,但是必须在键上放置括号不应该太麻烦。