作者danceofdie (zong)
看板Soft_Job
標題[心得] Javascript的繼承陷井
時間Sat Jan 21 00:50:02 2017
Javascript的繼承陷并,必須搞清楚 __proto__ ,[[prototype]]prototype
Javascript 的繼承自古以來就是一個令人頭痛的問題,沒有一種萬能藥可以解決所有物件的繼承。一般要討論繼承必須先討論 Class的屬性和創建方法,但是由於 Javascript 是 prototype-base-oriented 的語言,而且Javascript 中的 class 并不存在,在它的世界裏只有 Object 和 Instance,當中的物體創建,複製或繼承通通是透過 Prototype 完成。
Example 0 : [[prototype]] vs __proto__ vs prototype
Example 1 : Constructor 創造物件的陷并
Example 2 : JavaScript 的經典繼承圖表
#javascript #inheritance
#prototype #proto #class #object
閱讀更多:
http://bit.ly/2kaDirw
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 1.160.47.147
※ 文章網址: https://www.ptt.cc/bbs/Soft_Job/M.1484931005.A.736.html
推 julian9925: ES6 的繼承,class import export 可以解決許多問題 01/21 15:20
→ julian9925: 了吧 01/21 15:20
→ billy0131: ES6的class只是語法糖而已,底層還是一樣 01/21 16:49
→ y3k: 在JS想玩熟悉的OO 被搞死只是剛好而已 01/21 17:18
推 tom76kimo: 捨棄OOP,擁抱functional programming 01/23 10:15
→ akira01: JS上的OOP是模擬出來的,看起來是像吧,易學不容易精。 01/23 12:48
→ akira01: 要玩玩type script吧,寫起來像C#、JAVA 01/23 12:50
推 comesuck: 不是陷阱吧...這叫抽象化溢漏 01/23 14:34
噓 tz5514: 噓TypeScript 02/16 01:06