duc*_*cin 0 javascript underscore.js
我正在阅读underscore.js来源,试图了解所有这些.我还不了解的是_对象的定义.它的来源是:
var _ = function(obj) {
if (obj instanceof _) return obj;
if (!(this instanceof _)) return new _(obj);
this._wrapped = obj;
};
Run Code Online (Sandbox Code Playgroud)
在实际范围(生命)中,这指的是全局对象,_尚未声明.
如果您_在控制台中键入并按Enter(例如chrome),假设您已加载下划线库,您将获得与上面相同的函数定义.嗯 - 这是为了什么?为什么它不是一个普通的对象{},所有的函数/属性作为属性附加?
Underscore的_功能是作为包围其他对象(如数组)的包装器,它不仅仅是方法的集合.
它需要做到这两点:
_.each(array, function () {...});
Run Code Online (Sandbox Code Playgroud)
还有这个:
_(array).each(function () {...});
Run Code Online (Sandbox Code Playgroud)