Clojurescript - 在Javascript地图中更新

时间:2015-09-02 21:59:17

标签: clojurescript

如何将给定函数应用于JavaScript JSON结构?

我希望能够做到以下几点:

(update-in js-data [.-data] my-fn)  ;; fails since .-data is not valid

1 个答案:

答案 0 :(得分:3)

update-in和类似的函数仅适用于ClojureScript数据结构。

在您的具体示例中,您可以将js-data转换为ClojureScript数据结构,如此

(update-in (js->clj js-data) ["data"] my-fn)

如果您无法将Javascript对象转换为普通地图,则始终可以使用set!就地修改原始对象。

(set! js-data -data my-fn)