Clojurescript - 在 Javascript 映射中更新

Clojurescript - update-in a Javascript map

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

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

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

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

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

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

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

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