2016-04-15 151 views
2

假設我有以下HTML文檔元素和DOM被加載:ClojureScript中單引號標識符和雙引號之間的區別是什麼?

<ul id='myUnorderedList' /> 

當我的Clojure

(def my-element (.getElementById js/document 'myUnorderedList')) 

運行下面的代碼的my-element值是nil

但這個工程:

(def my-element (.getElementById js/document "myUnorderedList")) 

my-element#object[HTMLUListElement [object HTMLUListElement]]值。

(def my-element (.getElementById js/document "myUnorderedList")) 

我的問題是:是什麼單引號標識符和雙引號在ClojureScript之間的區別?

回答

5

Clojure和ClojureScript中沒有單引號標識符。要創建一個字符串,你必須使用雙引號(比如在JavaScript中,你可以使用雙引號,只要開始和結束引用匹配)。

您使用'myUnorderedList'創建的內容是符號myUnorderedList',因爲符號是使用前導單引號創建的。 您可以在這裏閱讀更多關於符號的信息:

http://clojure.org/reference/data_structures#Symbols

相關問題