1

最近、Clojure の代わりに ClojureScript を使用しようとしています。

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));
4

2 に答える 2

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)期待どおりに印刷されます。

于 2013-07-06T00:44:41.440 に答える