#每日一記# 3分鐘從 es6+ 編譯成 es5 的代碼里學(xué)習(xí)知識

每日一記 - 但并不日更

新系列導(dǎo)讀

學(xué)習(xí)編程語言是一件持之以恒的事情遮糖,從學(xué)會簡單的語法就能寫出程序礁凡,到理解類型和設(shè)計模式妒牙,再到考慮代碼的組織架構(gòu)吐绵。誰不是從這樣一點點深入和積累的呢迹淌?入門總是輕松又令人愉悅的,但隨著知識點越來越多學(xué)習(xí)的曲線卻驟然陡峭己单。但隨著對語言的深入理解唉窃,再回頭來重新審閱基本的知識,又會有柳暗花明又一村的豁然感纹笼,「啊纹份,原來是這樣的」那種感覺。

這個「3分鐘」系列將利用 babel 在線的實時編譯工具廷痘,來學(xué)習(xí)分析 es6+ 的部分特性蔓涧。通過編譯后的 es5 代碼,我們可以從中了解到 es6+ 特性的實現(xiàn)細(xì)節(jié)笋额,更好的掌握新特性的適用性元暴。

作為系列的第一篇,先介紹這個 babel 在線實時編譯工具兄猩。

babel

「今天茉盏,使用下一代 Javascript 編程」,正如 babel 官網(wǎng)的標(biāo)語枢冤,babel 正是為抹平 高速擴(kuò)展的 JS 標(biāo)準(zhǔn)緩慢實現(xiàn)標(biāo)準(zhǔn)的瀏覽器 產(chǎn)生的鴻溝而出現(xiàn)的援岩。babel 最大的功能就是將瀏覽器還未支持的語法編譯成低版本 js 語法,讓其能正常運行掏导。

首先打開頁面 babel 在線實時編譯

界面

界面分為三大區(qū)域:設(shè)置區(qū)享怀、源碼區(qū)編譯區(qū)

設(shè)置區(qū)

主要進(jìn)行編譯方式的設(shè)置和編譯環(huán)境的設(shè)置趟咆。

我們主要關(guān)心編譯環(huán)境(PRESETS) 的設(shè)置添瓷,比如你希望引入的環(huán)境編譯包(lib)梅屉。圖中所示的就是引入了 es2015stage-3 兩個編譯包,編譯器就會先對源碼進(jìn)行 stage-3 的特性進(jìn)行編譯,再對 es2015 的特性進(jìn)行編譯其馏。需要注意的是瘾晃,如果只開啟 es2015 那么只會編譯 es2015 中新增的特性,更加新穎的特性就無法識別出來惰聂。

讓我們來舉個例子:箭頭函數(shù)是 es2015 的新特性,而算數(shù)運算符冪運算 **es2016 的新特性咱筛,那么在編譯環(huán)境里只選擇 es2015 會發(fā)生什么呢搓幌?

// v6.26.0
// presets: es2015
// 源碼區(qū)
let foo = {
    bar: () => {
        return true;
    },
  
    baz: 10 ** 2,
}

// 編譯區(qū)
"use strict";

var foo = {
  bar: function bar() { // 只有 es2015 的箭頭函數(shù)被編譯了 
    return true;
  },

  baz: 10 ** 2
};

如果在編譯環(huán)境里只選擇 es2016 會發(fā)生什么呢?

// v6.26.0
// presets: es2016
// 源碼區(qū)
let foo = {
    bar: () => {
        return true;
    },
  
    baz: 10 ** 2,
}

// 編譯區(qū)
let foo = {
  bar: () => {
    return true;
  },

  baz: Math.pow(10, 2) // 只有 es2016 的冪運算符被編譯了
};

所以如果想讓所有新特性都被編譯成 es5 那么最好同時選擇 es2015stage-3 兩個編譯包迅箩。

// v6.26.0
// presets: es2015 stage-3
// 源碼區(qū)
let foo = {
    bar: () => {
        return true;
    },
  
    baz: 10 ** 2,
}

// 編譯區(qū)
"use strict";

var foo = {
  bar: function bar() {
    return true;
  },

  baz: Math.pow(10, 2)
};

// 特性都被編譯了
源碼區(qū)和編譯區(qū)

在源碼區(qū)輸入代碼溉愁,在編譯區(qū)就能實時顯示編譯后的代碼。

示例解讀

在這個系列里的代碼示例饲趋,為了可讀性都不會使用截圖拐揭,而是用代碼編寫,在代碼頭部添加注釋以方便閱讀代碼的人知道代碼的編譯環(huán)境和編譯細(xì)節(jié)奕塑。

代碼會包含使用的編輯器版本

// v6.26.0

包含使用的編譯包

// es2016

結(jié)語

由于 ES 的新特性主要包含兩個方面堂污,一個是對現(xiàn)有對象的擴(kuò)展,比如 Object.assing()龄砰;另一方面是對語法的擴(kuò)展盟猖,比如新語法和語法糖。這個「3分鐘」 系列也將著重介紹對語法的擴(kuò)展寝贡。

謝謝扒披。

羅小黑寫寫文字

如果喜歡文章 請留下一個贊~
如果喜歡文章 分享給更多人~

掘金中關(guān)注我
簡書中關(guān)注我

自由轉(zhuǎn)載-非商用-非衍生-保持署名(創(chuàng)意共享3.0許可證
轉(zhuǎn)載時請保留原文鏈接 以保證可及時獲取對文章的訂正和修改

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市圃泡,隨后出現(xiàn)的幾起案子碟案,更是在濱河造成了極大的恐慌,老刑警劉巖颇蜡,帶你破解...
    沈念sama閱讀 217,907評論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件价说,死亡現(xiàn)場離奇詭異,居然都是意外死亡风秤,警方通過查閱死者的電腦和手機(jī)鳖目,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,987評論 3 395
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來缤弦,“玉大人领迈,你說我怎么就攤上這事。” “怎么了狸捅?”我有些...
    開封第一講書人閱讀 164,298評論 0 354
  • 文/不壞的土叔 我叫張陵衷蜓,是天一觀的道長。 經(jīng)常有香客問我尘喝,道長磁浇,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,586評論 1 293
  • 正文 為了忘掉前任朽褪,我火速辦了婚禮置吓,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘缔赠。我一直安慰自己衍锚,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 67,633評論 6 392
  • 文/花漫 我一把揭開白布橡淑。 她就那樣靜靜地躺著构拳,像睡著了一般咆爽。 火紅的嫁衣襯著肌膚如雪梁棠。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,488評論 1 302
  • 那天斗埂,我揣著相機(jī)與錄音符糊,去河邊找鬼。 笑死呛凶,一個胖子當(dāng)著我的面吹牛男娄,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播漾稀,決...
    沈念sama閱讀 40,275評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼模闲,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了崭捍?” 一聲冷哼從身側(cè)響起尸折,我...
    開封第一講書人閱讀 39,176評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎殷蛇,沒想到半個月后实夹,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,619評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡粒梦,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,819評論 3 336
  • 正文 我和宋清朗相戀三年亮航,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片匀们。...
    茶點故事閱讀 39,932評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡缴淋,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情重抖,我是刑警寧澤圆存,帶...
    沈念sama閱讀 35,655評論 5 346
  • 正文 年R本政府宣布,位于F島的核電站仇哆,受9級特大地震影響沦辙,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜讹剔,卻給世界環(huán)境...
    茶點故事閱讀 41,265評論 3 329
  • 文/蒙蒙 一油讯、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧延欠,春花似錦陌兑、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,871評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至狞玛,卻和暖如春软驰,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背心肪。 一陣腳步聲響...
    開封第一講書人閱讀 32,994評論 1 269
  • 我被黑心中介騙來泰國打工锭亏, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人硬鞍。 一個月前我還...
    沈念sama閱讀 48,095評論 3 370
  • 正文 我出身青樓慧瘤,卻偏偏與公主長得像,于是被迫代替她去往敵國和親固该。 傳聞我的和親對象是個殘疾皇子锅减,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,884評論 2 354

推薦閱讀更多精彩內(nèi)容