最赞回答 / wghusw
                                
                                                            我来回答一下吧,是我个人的理解,不知正确与否,希望 @Aaron 可以纠正,关于“如果没执行if中的语句,那for循环中就从arguments[1]开始了,那arguments[0]没有得到扩展啊?”这个问题,样例代码中,如果执行extend时,传入的参数个数大于1,也就是第一个if判断失败的时候,我们应该可以得知使用者是针对某个具体的target(也就是arguments[0]对象)的扩展处理,随后的for循环直接跳过arguments[0]是合理的。老师的想法很巧妙...
                            
                        
                        2015-04-08
                
            
                                最赞回答 / 逍遥游_xj
                                
                                                            原因是:因为先加载的JQuery后调用的document.addEventListener添加DOMContentLoaded。注意jQuery.ready.promise里面的completed如下其实就是jQuery.ready()。function completed() {	document.removeEventListener( "DOMContentLoaded", completed, false );	window.removeEventListener( "load", complet...
                            
                        
                        2015-02-03
                
            
                                最赞回答 / 艾伦Aaron
                                
                                                            UUID或者UNID或者UID,是一个统一唯一标识,可以用来标记文档、数据或其它需要唯一标识的东西都是同一个东西,因为数据没有直接跟dom绑定的,是通过这个唯一标识符做的一个映射关系处理
                            
                        
                        2014-12-30
                
            
                                最赞回答 / 艾伦Aaron
                                
                                                            这个问题问的很好,为什么不是数组的[p,p]?这里我们要从本质上出发,我这个p是怎么来的?是通过<...code...>产生的,但是这个p元素是不是只有一个?只是通过appendTo('div')的时候,会产生二个,其实是因为appendTo内部在调用文档碎片clone了一个p,所以才会存在2个p元素那么end的本质是调用prevObject的引用,prevObject其实是保存最终引用的<...code...>这个产生的p,所以为什么只有一个的原因了
                            
                        
                        2014-12-28
                
            
                                最赞回答 / MrzHuo
                                
                                                            var F = function (e) {    "use strict";  //这行是定义此函数使用的是js严格模式        ...  //中间代码应该是对e进行扩展, 类似 e.newFunction = function () {};    return e;   //返回已经拓展好的e对象}(F || {});  //函数自执行, F || {}是短路使用, 如果F存在 e == F, 如果不存在 e == {}/* 这样的主要目的就是扩展F这个对象, 如果已经存在F对象了, 就对F对象...
                            
                        
                        2014-12-14
                
             
             
        











