日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 综合教程 >内容正文

综合教程

CoffeeScript简介 <一>

發布時間:2023/12/19 综合教程 37 生活家
生活随笔 收集整理的這篇文章主要介紹了 CoffeeScript简介 <一> 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

介紹

coffeeScript是一種輕量級的編程語言,可以用編譯器生成原生javascript代碼。它簡化了許多javascript繁瑣的方式,可以讓你用簡單的方式直接使用一行程序代表javascript多行代碼,而且編譯后還會根據最佳實踐優化javascript代碼。它的語法像是pythonruby的混合,不用括號控制排版,直接用縮進表示。建議初學者一邊寫coffeescript,一邊對照生成的javascript代碼,可以很快的了解coffeescript的意義。 瀏覽器最后執行的還是編譯后的javascript代碼。

語法

去掉多余的符號&&使用縮進

首先來看一個 coffeescript demo:

if elvis
  alert "oh no"
  elvis = 3

編譯成 javascript 代碼之后:

if (elvis){
  alert("oh no");
  elvis = 3;
}

看上面的coffee代碼和js代碼,js中的圓括號被去掉了,畫括號也去掉了,分號;也去掉了。

再比如:

if elvis
  alert "oh no"
elvis = 3

編譯成 javascript 代碼之后:

if (elvis){
  alert("oh no");
}
elvis = 3;

最后一句代碼縮進方式不同,導致最終編譯的js也不一樣,coffee就是根據tab縮進來進行排版的。

函數

聲明函數時coffee默認會把最后一行作為函數的返回值,可以不加return,如果返回值為空,可以加上return

例如:

fill = (x) ->
  x * x

編譯后的js為:

var fill;
fill = function(x){
  return x * x;
}

字符串占位符

這是coffe中最愛的一點,因為javascript中沒有類似c#中的string.Format()方法,拼接很長的字符串時代碼看起來可讀性很差。

# 這是cofee的注釋
eat = (x) -> alert "I eat #{x}!"
eat food for food in ['toast', 'cheese', 'wine']

編譯后的js代碼:

var eat, food, _i, _len, _ref;

eat = function(x) {
  return alert("I eat " + x + "!");
};

_ref = ['toast', 'cheese', 'wine'];
for (_i = 0, _len = _ref.length; _i < _len; _i++) {
  food = _ref[_i];
  eat(food);
}

這里可以看出來使用coffee有多省事了吧。

區間使用

coffee有一個像java一樣的...的語法:

# ... 表示區間
numbers = [0,1,2,3,4,5,6,7,8,9]
copy = numbers[0...numbers.length]
middle = numbers[3...6]

關于 ==!= 之間的比較

在coffee中沒有==,一律使用===,所以也就沒有!=,只有!==。javascript中=====的區別是:

三等操作符===用來判斷兩個變量是否相等,相等的前提是同樣的類型和同樣的值。

具體請參考我的另一篇文章。

對象判空

coffee可以使用?來判斷參數是否已定義或是null值,例如:

if elvis?
  alert "oh no"
  elvis = 3

編譯后的js代碼:

var elvis;

if (typeof elvis !== "undefined" && elvis !== null) {
  alert("oh no");
  elvis = 3;
}

總結

以上是生活随笔為你收集整理的CoffeeScript简介 &lt;一&gt;的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。