其實就是把JS好用的地方提煉出來了,再加點語法糖!
除非你很熟悉JS,不然COFFEE的執行效率大概會比手寫的高,而且優雅
但是如果你真的很熟悉JS的話,你手寫JS出來的代碼應該也是跟coffee編譯出來的沒差
所以選COFFEE還能省鍵盤。。
先來看下對比代碼(左為CoffeeScript):
CoffeeScript的吸引力:
1、提供一種比較簡單的語法,減少了樣板代碼,諸如括號和逗號;
2、使用空格作為一種組織代碼塊的方法;
3、提供擁有表達函數的簡單語法;
4、提供基于類的繼承(可選項,但是在進行應用程序開發時非常有用)
先決條件:
CoffeeScript使用Nodejs的包管理程序,作為Node.js的一個包進行分布。
CoffeeScript必須被編譯,其編譯器實際上就是使用CoffeeScript編寫的,所以,需要一個JavaScript運行時來完成其編譯。
安裝方法:
sudo npm install -g coffee-script
安裝成功后,我們應該能夠在命令行中找到 coffee 命令了。coffee -v 我這里看到的是 1.6.0。使用 coffee 命令,可以將 .coffee 文件編譯成 js 文件。使用 coffeescript 的格式來寫 javascript 據說可以節省三分之二的代碼量哦。
基本用法:
-c,--compile 將.coffee編譯為.js文件
-w,--watch 監控文件的變化,并輸出監控的結果
-o,--output [DIR] 將編譯的結果文件輸出到指定目錄
-p,--print 將編譯結果
-l,--lint 如果安裝了 jsl (javascript lint)的話,使用lint檢查代碼
-s,--stdio 將其它程序的輸出作為coffee的標準輸入,并且獲得JavaScript的標準輸出。
-e,--eval 命令行的形式
安裝:
你是否曾希望能夠通過命令行來運行JavaScript?反正我是沒有,不過CoffeeScript可能會改變現狀。有了Node.js,你可以通過命令行來運行JavaScript,或是把JavaScript作為執行腳本的組成部分來運行。Node.js的這一主要功能允許在命令行上執行CoffeeScript代碼,其提供了(使用CoffeeScript編寫的)CoffeeScript編譯器所需要的運行時。
第一步是安裝Node.js,有幾種安裝選擇;你可以編譯源代碼,或是運行可用于各種系統的安裝程序之一。通過命令行運行node -v來確認Node.js已經安裝并且已位于路徑中。
Node.js給你帶來了一個額外的收獲:節點包管理器(NPM)。通過命令行運行npm -v確認NPM已經安裝并已位于路徑中之后,就可以按照如下步驟來使用NPM安裝CoffeeScript了。
1. 通過命令行運行npm install --global coffee-script。
--global標記讓CoffeeScript可為全系統所用而不僅是為某個特定項目所用。
2. npm命令應該輸出諸如/usr/bin/coffee -> /usr/lib/node_modules/coffee-script/bin/coffee一類的信息。
NPM在 /usr/bin中創建了一個快捷方式,所以現在coffee這一可執行文件就處在正確的路徑中了,這是CoffeeScript的編譯器和解釋器。
3. 若要驗證coffee這一執行文件已位于路徑中,通過命令行運行coffee -v。
還剩最后一步來確認CoffeeScript的環境已被正確設置。為了讓CoffeeScript對于任何啟動的Node.js進程來說都是可用的,你需要把它加入到Node.js所謂的NODE_PATH中,在遇到未識別的函數時,Node.js會通過搜索NODE_PATH來獲取一些模塊(庫)。
就本文中的例子來說,主要是把Node.js用作CoffeeScript可執行文件的運行時。最容易的做法是簡單地把所有的NPM模塊都添加到NODE_PATH中,若要找出NPM模塊所處的位置,輸入 npm ls -g,你需要添加一個把NODE_PATH指向這一位置的環境變量。例如,如果npm ls -g的輸出是/usr/lib,則模塊位于/usr/lib/node_modules目錄下,若要設置一個NODE_PATH環境變量,運行export NODE_PATH=/usr/lib/node_modules。
你可以通過把上面的命令放入到啟動腳本(比如說~/.bash_profile)中來進一步簡化這些事情。若要驗證所做的修改,執行Node來啟動一個Node.js外殼程序,然后輸入require('coffee-script'),Node.js外殼程序應該就會載入CoffeeScript庫。如果執行沒問題的話,CoffeeScript環境就是隨時可用的了?,F在你可以從編譯器開始,啟動CoffeeScript的探索之旅了。
編譯器
運行CoffeeScript編譯器很容易,只要輸入coffee -c就可以了,該命令啟動了CoffeeScript的讀取-計算-輸出-循環(read-evaluate-print-loop,REPL)。若要執行該編譯器,你需要把一個想要編譯CoffeScript文件傳給它。創建一個名為cup0.coffee的文件,把清單2中的內容粘貼到該文件中。
清單2. Cup 0
for i in [0..5]
console.log "Hello #{i}"
你可能會猜想清單2中的這兩行代碼能干什么,清單3給出了運行coffee cup0.coffee的輸出。
清單3. 運行首個CoffeeScript
$ coffee cup0.coffee
Hello 0
Hello 1
Hello 2
Hello 3
Hello 4
Hello 5
為了對發生的事情有一個更加清晰的概念,試著運行一下編譯器,輸入coffee -c cup0.coffee,該命令創建了一個名為cup0.js的文件,清單4給出了cup0.js的內容。
CoffeeScript 1.9.3 發布,此版本主要有以下更新:
Bugfix for interpolation in the first key of an object literal in an implicit call.
Fixed broken error messages in the REPL, as well as a few minor bugs with the REPL.
Fixed source mappings for tokens at the beginning of lines when compiling with the --bareoption. This has the nice side effect of generating smaller source maPS.
Slight formatting improvement of compiled block comments.
Better error messages for on, off, yes and no.
您的評論需要經過審核才能顯示
有用
有用
有用