作者willy69wu31 (小小吴)
看板Ajax
标题[ js ] 物件导向的写法
时间Wed Sep 11 20:16:35 2013
还没有用 js 写过物件导向的 code,
由於 js 的物件导向和其他语言很不一样,先查了一些资料
像是这篇
http://www.josephjiang.com/presentation/OOJS/object-oriented-paradigms.html
文内就有提到好几种物件导向的实作方式,
而且看起来应该也还有其他种方式。
有的用 prototype 写 function,有的直接包物件内;
有的方式写起来直观,有的方式写起来效能更好,
不知道各位用 js 写物件导向的时候,通常会采用什麽方式?
以及是否有特别的原因?
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 163.24.254.149
1F:→ danny8376:个人的话惯用JSON定义完整的prototype然後在assign 09/12 03:33
2F:→ danny8376:原因... jQuery就这样写的XD 09/12 03:33
3F:推 mrbigmouth:function + prototype 因为这就是javascript最原生的 09/12 09:32
4F:→ mrbigmouth:的class方法 根据以前我看v8引擎的介绍这样写也最快 09/12 09:33
5F:→ mrbigmouth:因此生出来的物件可以被记忆并且最优化 09/12 09:33
6F:推 mrbigmouth:而且据我所知大部份的class套件内部也是这样写的 09/12 09:35
7F:→ mrbigmouth:比如Backbone 09/12 09:35
8F:→ mrbigmouth:想要写起来更直观的话 使用这些套件就行了 09/12 09:35
9F:→ mrbigmouth:ECMA5的Object.create继承法更适合定义资料或者设定y 09/12 09:36
10F:→ mrbigmouth:不过这是感觉上啦 09/12 09:37
11F:推 mrbigmouth:至於ECMA6的class就不知道是多久以後的事了.... 09/12 09:38
感谢各位回应
※ 编辑: willy69wu31 来自: 163.24.254.149 (09/13 16:26)
12F:推 jerry5:定义建构子去宣告新物件. 09/14 01:49