| function | since v1.7.10 | Edit |
(munge name)Munge symbol or string `name` for safe use in JavaScript. - Replaces '..' with '_DOT__DOT_'. - Appends '$' to JavaScript reserved keywords. - Returns a symbol if `name` was a symbol, otherwise a string.
(defn munge
[name]
(let [name' (munge-str (str_ name))
name' (cond
(identical? name' "..") "_DOT__DOT_"
(js-reserved? name') (str_ name' "$")
:else name')]
(if (symbol? name)
(symbol name')
name')))