Closed zhoucumt closed 8 years ago
@zhoucumt 看个例子:
function Person(obj) {
if (obj instanceof Person)
return obj;
if (!(this instanceof Person))
return new Person(obj);
this.name = obj;
}
var p = Person('hanzichi');
console.log(p);
试着把 this
改成 obj
看看, this.name = obj
这行永远也调不到
@hanzichi 希望楼主能给出underscore整体上的设计原理和框架的设计思路。现在讲的都是细节的知识点,整体上没能让人很好的把握。谢谢
@zhoucumt 其实最好的方式是自己去读一遍
@zhoucumt
整体思路和设计原理,以及调用方式包括 OOP 等是肯定会讲的,只是我希望把它放在最后讲,个人觉得前者不影响对于细节方法的理解。甚至可以将 _
简化下如此理解:
var _ = {};
_.each = function() {
// ...
};
如标题, 该函数中,也就是66行if (!(this instanceof )) return new (obj); 为什么这里不是obj instanceof _而变成了this?