And*_*rea 13 interop clojure clojurescript
我试图找出如何在ClojureScript中访问Javascript对象属性.如果我提前知道该物业的名称,那很容易.让foo.bar我做的就是
(.-bar foo)
Run Code Online (Sandbox Code Playgroud)
有没有办法访问其名称仅在运行时已知的属性?我正在寻找相当于JS语法
foo[dynamicBar]
sw1*_*1nn 19
您可以使用aget/aset访问仅在运行时已知的属性.
;; Use clj->js to convert clj(s) map to javascript.
;; Note the #js {:bar 100} reader literal indicating a js map.
cljs.user> (def foo (clj->js {:bar 100}))
#js {:bar 100}
cljs.user> (.-bar foo)
100
cljs.user> (aget foo "bar")
100
cljs.user> (aset foo "baz" 200)
200
cljs.user> (.-baz foo)
200
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6543 次 |
| 最近记录: |