ClojureScript现在有多不完整? (范围)(迭代)等

时间:2013-07-05 07:31:12

标签: node.js clojure 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));

2 个答案:

答案 0 :(得分:3)

您可以console.log (range 10)的字符串表示形式:

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

或只使用println功能:

(println (range 10))

在任何一种情况下,都会按预期打印(0 1 2 3 4 5 6 7 8 9)

答案 1 :(得分:2)

看起来你想要打印矢量; range返回一个懒惰的序列。

试试这个:

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