Ordinal/int/ascii字符值

use*_*234 3 clojure clojurescript

在clojure repl我可以这样做:

=> (int \a)
97
Run Code Online (Sandbox Code Playgroud)

在closurescript中,我不断得到

=> (int \a)
0
Run Code Online (Sandbox Code Playgroud)

在我目前的clojurescript项目中,我定义了一个var:

(def ord-a (int \a))
Run Code Online (Sandbox Code Playgroud)

当我检查发出的javascript时,我看到:

ord_a = ("a" | (0));
Run Code Online (Sandbox Code Playgroud)

这解释了差异,但并没有真正做到我想要的.所以:

  1. 我在这做错了什么?
  2. 如何获取clojurescript中字符的序数/ int/ascii值?

小智 7

Clojurescript没有字符文字.

如此处所述,您可以使用js interop获取它:

=> (.charCodeAt \a 0)
97
Run Code Online (Sandbox Code Playgroud)