前言

?兩年多前知道cljs的存在時十分興奮,但因為工作中根本用不上,國內(nèi)也沒有專門的職位于是擱置了對其的探索。而近一兩年來又刮起了函數(shù)式編程的風潮,恰逢有幸主理新項目的前端架構(gòu),于是引入Ramda.js來療藉心中壓抑已久的渴望,誰知一發(fā)不可收拾,于是拋棄所有利益的考慮,遵循內(nèi)心,好好追逐cljs一番:D
?cljs就是ClojureScript的縮寫,就是讓Clojure代碼transpile為JavaScript代碼然后運行在瀏覽器或其他JSVM上的技術(shù)。由于宿主環(huán)境的不同,因此只能與宿主環(huán)境無關(guān)的Clojure代碼可以在JVM和JSVM間共享,并且cljs也未能完全實現(xiàn)clj中的所有語言特性,更何況由于JSVM是單線程因此根本就不需要clj中STM等特性呢……
?transpile為JS的函數(shù)式編程那么多(如Elm,PureScript),為什么偏要cljs呢?語法特別吧,有g(shù)eek的感覺吧,隨心就好:)

?本文將快速介紹cljs的語言基礎(chǔ),大家可以直接通過clojurescript.net的Web REPL來練練手!

注釋

?首先介紹一下注釋的寫法,后續(xù)內(nèi)容會用到哦!

;    單行注釋
;;   函數(shù)單行注釋
;;;  macro或defmulti單行注釋
;;;; 命名空間單行注釋
(comment "
    多行注釋
")

#! shebang相當于;單行注釋#_ 注釋緊跟其后的表達式, 如: [1 #_2 3] 實際為[1 3],#_(defn test [x] (println x)) 則注釋了成個test函數(shù)

數(shù)據(jù)類型

標量類型

        		

延伸閱讀

學習是年輕人改變自己的最好方式-Java培訓,做最負責任的教育,學習改變命運,軟件學習,再就業(yè),大學生如何就業(yè),幫大學生找到好工作,lphotoshop培訓,電腦培訓,電腦維修培訓,移動軟件開發(fā)培訓,網(wǎng)站設(shè)計培訓,網(wǎng)站建設(shè)培訓學習是年輕人改變自己的最好方式