munge

functionsince v1.7.10Edit
(munge name)

Source docstring:
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.
Source code @ clojurescript:src/main/cljs/cljs/core.cljs
(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')))