求大神们看下这个神级代码

Ricci_April 2012-11-20 03:27:37
var Class = function(properties){
var _class = function(){return (arguments[0] !== null && this.initialize && typeof(this.initialize) == 'function') ? this.initialize.apply(this, arguments) : this;};
_class.prototype = properties;
return _class;
};

这个代码,作用貌似是创建一种通用的类模板。但是具体意思不懂啊。求大神们解析。谢谢了。
...全文
164 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
未知数 2012-11-20
  • 打赏
  • 举报
回复
第一个问题:作用是根据参数传入的对象,返回一个以该对象为原型的构造函数,但多了点代码,感觉是自定义的继承函数,若基类按一定规则设计(所有初始化逻辑放initialize中而不是构造函数中),那么传入基类的原型链对象(先重写initialize方法),将生成一个继承了基类属性方法的构造函数。目测不是一个有用的函数,用作继承不是很方便,仅用作生成构造函数又显得多余。 第二个: 你的写法是错的,Class返回的是函数,不是对象 这个函数
Ricci_April 2012-11-20
  • 打赏
  • 举报
回复
引用 楼主 Ricci_April 的回复:
var Class = function(properties){ var _class = function(){return (arguments[0] !== null && this.initialize && typeof(this.initialize) == 'function') ? this.ini……
追问以下,一般这个都是在后面会有这样的代码,var tt = new Class(object), var ttt = new tt();这样的话,为什么要new Class()啊,一样可以直接用 var tt = Class(object)啊。。。求大神们点拨。

87,992

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧