如何不完整的ClojureScript? (范围)(迭代)等

我正在尝试最近使用ClojureScript而不是Clojure。

当我编译和运行node.js

(.log js/console (range 10)) 

我有

 $ node app { meta: null, start: 0, end: 10, step: 1, __hash: null, 'cljs$lang$protocol_mask$partition1$': 0, 'cljs$lang$protocol_mask$partition0$': 32375006 } 

我有点惊讶地看到这个简单的代码不起作用。

这是由于我的具体环境? 我希望如此,如果这是我的问题,请告知。

这里是编译的js:

 cljs.nodejs = {}; cljs.nodejs.require = require; cljs.nodejs.process = process; cljs.core.string_print = cljs.nodejs.require.call(null, "util").print; var rxcljs = {core:{}}; console.log(cljs.core.range.call(null, 10)); 

您可以console.log (range 10)的string表示forms:

 (.log js/console (pr-str (range 10))) 

或者直接使用println函数:

 (println (range 10)) 

无论哪种情况, (0 1 2 3 4 5 6 7 8 9)都按预期打印。

看起来你想要打印vector; range返回一个懒惰的seq。

尝试这个:

 (.log js/console (vec (range 10)))