7天搞懂JS進階議題: 目錄


本文同步發表於隨性筆記

寫了這麼久的JS,你還在物件之前的時代嗎?只有資料、函式可以用,破破的抽象化,不會難以維護?儘管JS起初並不以物件導向設計,但透過原形鏈設計,其仍然可以具有好維護的物件導向特色。本系列從最基礎的this,深入ES6之後的class。

系列目錄

  1. 第0天 - Oh...開始了......
  2. 第1天 - this & bind: 你不能不知道的
  3. 第2天 - new & factory: 如何建立一個新物件
  4. 第3天 - Function & Object: 關於Prototype Chain繼承
  5. 第4天 - Class & constructor: 吃語法糖別噎到
  6. 第5天 - getter & setter: 屬性描述器
  7. 第6天 - yield & yield*: 生成器
  8. 第7天 - Symbol & Proxy: 以前沒有的
  9. 第8天 - Closure & Private:番外短篇 隱私成員

各章節簡介

(第1天) this & bind: 你不能不知道的

物件導向必不可少的,就是如何引用參考自己。

要是自己的錢包都拿不出來,你要怎買個冰棒?

(第2天) new & factory: 如何建立一個新物件

既然是要來物件導向,當然要先來學怎麼建立物件。本節帶你看看如何建立一個新的物件。

(第3天) Function & Object: 關於Prototype Chain繼承

class之前,必須了解的prototype chain

JavaScript 是個沒有實做 class 關鍵字的動態語言,所以會對那些基於類別(class-based)語言(如 Java 或 C++)背景出身的開發者來說會有點困惑。(在 ES2015 有提供 class 關鍵字,但那只是個語法糖,JavaScript 仍然是基於原型(prototype-based)的語言)。

(第4天) Class & constructor: 吃語法糖別噎到

<!--more-->

關於class這個關鍵字,JS將其作為保留字好一段時間,直至ES6標準的制定,再經過瀏覽器漫長的實做,至今才有class的語法糖可以使用。

(第5天) getter & setter: 屬性描述器

有了物件然後呢?
來說說關於成員(field/attribute/member)背後的屬性。

(第6天) yield & yield\: 生成器

生成器(generator),這個類型的建立與使用,和普通的JS類別有些不同,來看看吧!

(第7天) Symbol & Proxy: 以前沒有的

最後一天,來看兩個特別的類別--SymbolProxy

#js #javascript #EMCAScript





寫了這麼久的JS,你還在物件之前的時代嗎?只有資料、函式可以用,破破的抽象化,不會難以維護?儘管JS起初並不以物件導向設計,但透過原形鏈設計,其仍然可以具有好維護的物件導向特色。本系列從最基礎的this,深入ES6之後的class。

留言討論