最赞回答 / 艾伦Aaron
首先做框架要考虑兼容与性能问题for in
语句对数组对象进行遍历潜在的bug在于:如果原生Array类被其他的js脚本库进行了原型扩展(比如多加一个toJSON方法即Array.prototype.toJSON=xxxx),那么用for
in遍历扩展后的Array对象的逻辑将与遍历原生Array对象的逻辑发生差异。
2014-11-22
最赞回答 / AndyAlien
当加载jQueryxxx.js中:var _jQuery = window.jQuery, _$ = window.$的时候。还没有执行下面的 if(typeof noGlobal xxx){xxx} 这个代码段,此时 window.jQuery = window.$ = _$ = _jQuery = undefined。虽然后面继续加载到 if(typeof noGlobal){...} 之后,window.jQuery = window.$ = jQuery赋值完成之后,但前面加载过的_$和_jQue...
2014-11-18
已采纳回答 / whuomingjian
个人理解:浏览器事件是异步发生的,jQuery的ready方法中(源码)是这样处理的(jquery2.1.1),1.使用setTimeout( jQuery.ready ),时间最小间隔;2.readyList = jQuery.Deferred(),事件队列(顺序);3.document.addEventListener( "DOMContentLoaded", completed, false ),completed方法调用自己,等保证ready方法是第一个DOM加载完后执行的。页面中的那个只能等前面...
2014-11-16