转自:http://www.cnblogs.com/snandy/archive/2011/03/06/1972264.html
续上篇,
构造函数+原型 组装一个类;同一构造函数可以定义出多个类型
06 |
function $class(constructor,prototype) { |
07 |
var c = constructor || function (){}; |
08 |
var p = prototype || {}; |
11 |
arguments.callee.prototype[atr] = p[atr]; |
13 |
c.apply( this ,arguments); |
与上一篇方式类似,仍然用构造函数,原型对象,定义两个类。
02 |
function Person(name) { |
07 |
getName : function (){ return this .name}, |
08 |
setName : function (name){ this .name = name;} |
11 |
var Man = $class(Person,proto); |
12 |
var Woman = $class(Person,proto); |
与上一篇不同的是,虽然Man和Woman都是用Person,proto组装的。但Man却不等于Woman。即同一个构造函数(Person)可以定义出不同的类。
2 |
console.log(Man == Woman); |