[英]Parse Clojure Script to JSON in Javascript
我有Clojure格式的Clojure數據。
[{:dt [2017 6 30], :cashflow 431782} {:dt [2018 6 30], :cashflow 452271} {:dt [2019 6 30], :cashflow 473785} {:dt [2020 6 30], :cashflow 496374}]
我想要上面的clojure數據以json的形式。 從clojure方面,我可以隨時使用柴郡。 但是我想在javascript的許可方面做到這一點
如這個問題( cljs.reader/read-string
)和這個問題( clj->js
)所示 ,以下應該可以解決問題:
cljs.user=> (def data-as-str
"[{:dt [2017 6 30], :cashflow 431782}
{:dt [2018 6 30], :cashflow 452271}
{:dt [2019 6 30], :cashflow 473785}
{:dt [2020 6 30], :cashflow 496374}]")
#'cljs.user/data-as-str
cljs.user=> (cljs.reader/read-string data-as-str)
[{:dt [2017 6 30], :cashflow 431782}
{:dt [2018 6 30], :cashflow 452271}
{:dt [2019 6 30], :cashflow 473785}
{:dt [2020 6 30], :cashflow 496374}]
; i have little experience in cljs but this should deliver
; a plain old js object
cljs.user=> (clj->js (cljs.reader/read-string data-as-str))
#js [#js {:dt #js [2017 6 30], :cashflow 431782}
#js {:dt #js [2018 6 30], :cashflow 452271}
#js {:dt #js [2019 6 30], :cashflow 473785}
#js {:dt #js [2020 6 30], :cashflow 496374}]
從這里開始,您可以執行JSON .___或其他js-json lib提供的任何操作
例如:
cljs.user=> (.stringify js/JSON
(clj->js (cljs.reader/read-string data-as-str)))
"[{\"dt\":[2017,6,30],\"cashflow\":431782},{\"dt\":[2018,6,30],\"cashflow\":452271},{\"dt\":[2019,6,30],\"cashflow\":473785},{\"dt\":[2020,6,30],\"cashflow\":496374}]"
您可以使用在JavaScript中實現的EDN解析器: github.com/shaunxcode/jsedn 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.