最近正在切换到新的工作环境,需要对之前的好多东西做整理。所以预计将会有一大波的101系列袭来,不过不要紧这些新坑都是管挖也管埋。今天主题是Coffeescript 101,先来简单介绍一下CoffeeScript。
首先要把握住一点,CoffeeScript本质上还是JavaScript,只是书写的方式不同而已,最后的.coffee都会被编译为.js文件,只有这样的格式才能被浏览器所接受。之所以要使用这么一种中转语言,是因为它能帮助我们从js单调的语法中解放出来,CoffeeScript的语法上集成了Python和Ruby的许多优点,写起来会越写越轻松,并且经过CoffeeScript生成的JavaScript代码都是被优化过的。
unless,is,isnt
brew install node
npm install -g coffee-script
有两种方式编辑CoffeeScript代码,一种是通过编辑.coffee后缀文件,另一种是直接在类似ipyhton、irb这样的交互式解释器(通过coffee命令进入)书写。
使用.coffee文件,需要通过命令行将CoffeeScript编译为js文件,因为本质上你写的还是js代码,只是换了一种写法而已,与SCSS的性质是一样的。
coffee -c -w .
使用上面命令可以将命令执行时所在目录下的.coffee后缀的文件都转为.js,其中-w表示持续监听源文件的变化,如果发现文件有变化就自动再编译一遍.coffee。
# nodejs中
global.GlobalVariable = "foo"
# 浏览器中
window.GlobalVariable = "bar"
# 遍历数组
for item in array
# 遍历对象
for k, v of author
从代码中就能看出二者的区别来,当遍历数组时使用in关键字,当遍历对象用的却是of关键字,后者会在一次遍历中同时取到两个值,属性的键和属性的具体值。
-待续-